CsNode Struct ReferenceAbstract AST node. Base class for all AST node classes.
More...
Inheritance diagram for CsNode:
List of all members.
Detailed Description
Abstract AST node. Base class for all AST node classes.
Constructor & Destructor Documentation
CsNode::CsNode |
( |
cs_node |
type_ |
) |
[inline, explicit] |
|
virtual CsNode::~CsNode |
( |
|
) |
[inline, virtual] |
|
CsNode::CsNode |
( |
const CsNode & |
rhs |
) |
[private] |
|
Member Function Documentation
virtual void CsNode::addEntityDefinitions |
( |
CsEntityCollector & |
tokenCollector |
) |
[pure virtual] |
|
|
Collect entities defined in this AST node.
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsExpression, CsEmbeddedTypeMemberAccess, CsInvocationExpression, CsElementAccess, CsAsIsExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
virtual void CsNode::addEntityReferences |
( |
CsEntityCollector & |
tokenCollector |
) |
[pure virtual] |
|
|
Collect entity references.
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsExpression, CsEmbeddedTypeMemberAccess, CsInvocationExpression, CsElementAccess, CsAsIsExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
virtual void CsNode::addTokens |
( |
CsTokenCollector & |
tokenCollector |
) |
[pure virtual] |
|
|
Collect token indexes associated with this AST node.
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsSimpleName, CsLiteral, CsEmbeddedTypeMemberAccess, CsThisAccess, CsBaseMemberAccess, CsBaseIndexerAccess, CsTypeofExpression, CsCheckedExpression, CsUncheckedExpression, CsSizeofExpression, CsParenthesizedExpression, CsNewObjectExpression, CsNewArrayExpression, CsInvocationExpression, CsElementAccess, CsMemberAccess, CsPointerMemberAccess, CsPostIncrementDecrementExpression, CsBinaryExpression, CsAsIsExpression, CsConditionalExpression, CsOperatorUnaryExpression, CsPreIncrementDecrementExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClass, CsStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsStackAllocExpression, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
virtual void CsNode::addTokensRecursive |
( |
CsTokenCollector & |
tokenCollector |
) |
[pure virtual] |
|
|
Recusively collect token indexes in source code order.
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsSimpleName, CsLiteral, CsEmbeddedTypeMemberAccess, CsThisAccess, CsBaseMemberAccess, CsBaseIndexerAccess, CsTypeofExpression, CsCheckedExpression, CsUncheckedExpression, CsSizeofExpression, CsParenthesizedExpression, CsNewObjectExpression, CsNewArrayExpression, CsInvocationExpression, CsElementAccess, CsMemberAccess, CsPointerMemberAccess, CsPostIncrementDecrementExpression, CsBinaryExpression, CsAsIsExpression, CsConditionalExpression, CsOperatorUnaryExpression, CsPreIncrementDecrementExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClass, CsStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsStackAllocExpression, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
virtual void CsNode::build_entities |
( |
CsDisplay & |
display |
) |
[pure virtual] |
|
|
Build Entities - pass 2 (for internal purpose only).
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsExpression, CsThisAccess, CsBaseMemberAccess, CsBaseIndexerAccess, CsAsIsExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, and CsCompilationUnit. |
virtual void CsNode::clearEntities |
( |
|
) |
[pure virtual] |
|
|
Clear all entity references (for internal purpose only).
Implemented in CsScopeNode, CsUsingAliasDirective, CsUsingNamespaceDirective, CsScopeNodeWithUsingDirectives, CsTypeRef, CsExpression, CsEmbeddedTypeMemberAccess, CsBaseIndexerAccess, CsTypeofExpression, CsCheckedExpression, CsUncheckedExpression, CsSizeofExpression, CsParenthesizedExpression, CsNewObjectExpression, CsNewArrayExpression, CsInvocationExpression, CsElementAccess, CsMemberAccess, CsPointerMemberAccess, CsPostIncrementDecrementExpression, CsBinaryExpression, CsAsIsExpression, CsConditionalExpression, CsOperatorUnaryExpression, CsPreIncrementDecrementExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsClass, CsStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsStackAllocExpression, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
CS_GET_NODES const char* CsNode::getFilePath |
( |
|
) |
const |
|
virtual void CsNode::member_lookup |
( |
CsDisplay & |
display |
) |
[pure virtual] |
|
|
Member Lookup - pass 4 (for internal purpose only).
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsSimpleName, CsLiteral, CsEmbeddedTypeMemberAccess, CsThisAccess, CsBaseMemberAccess, CsBaseIndexerAccess, CsTypeofExpression, CsCheckedExpression, CsUncheckedExpression, CsSizeofExpression, CsParenthesizedExpression, CsNewObjectExpression, CsNewArrayExpression, CsInvocationExpression, CsElementAccess, CsMemberAccess, CsPointerMemberAccess, CsPostIncrementDecrementExpression, CsBinaryExpression, CsAsIsExpression, CsConditionalExpression, CsOperatorUnaryExpression, CsPreIncrementDecrementExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsStackAllocExpression, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
virtual void CsNode::type_lookup |
( |
CsDisplay & |
display |
) |
[pure virtual] |
|
|
Type Lookup - pass 3 (for internal purpose only).
Implemented in CsUsingAliasDirective, CsUsingNamespaceDirective, CsTypeRef, CsSimpleName, CsLiteral, CsEmbeddedTypeMemberAccess, CsThisAccess, CsBaseMemberAccess, CsBaseIndexerAccess, CsTypeofExpression, CsCheckedExpression, CsUncheckedExpression, CsSizeofExpression, CsParenthesizedExpression, CsNewObjectExpression, CsNewArrayExpression, CsInvocationExpression, CsElementAccess, CsMemberAccess, CsPointerMemberAccess, CsPostIncrementDecrementExpression, CsUnaryExpression, CsBinaryExpression, CsAsIsExpression, CsConditionalExpression, CsOperatorUnaryExpression, CsPreIncrementDecrementExpression, CsCastUnaryExpression, CsAssignmentExpression, CsExpressionList, CsNamedArgument, CsAttribute, CsAttributeSection, CsAttributes, CsTypeBase, CsClassStruct, CsInterface, CsEnumMember, CsEnum, CsFormalParameter, CsFormalParameterList, CsDelegate, CsNamespace, CsArgument, CsArgumentList, CsBlock, CsLabel, CsLabeledStatement, CsEmptyStatement, CsExpressionStatement, CsDeclarationStatement, CsLocalConstantDeclarator, CsLocalConstantDeclaration, CsIfStatement, CsSwitchLabel, CsSwitchSection, CsSwitchStatement, CsWhileStatement, CsDoWhileStatement, CsLocalVariableDeclarator, CsLocalVariableDeclaration, CsStatementExpressionList, CsForStatement, CsForeachStatement, CsBreakStatement, CsContinueStatement, CsGotoStatement, CsReturnStatement, CsThrowStatement, CsCatchClause, CsTryStatement, CsCheckedStatement, CsUncheckedStatement, CsLockStatement, CsUsingStatement, CsUnsafeStatement, CsFixedPointDeclarator, CsFixedStatement, CsStackAllocExpression, CsConstructorDeclaration, CsConstantDeclarator, CsConstantDeclaration, CsVariableDeclarator, CsVariableDeclaration, CsArrayInitializer, CsMethod, CsPropertyAccessor, CsProperty, CsEventAccessor, CsEventDeclarator, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, CsDestructorDeclaration, CsCompilationUnit, CsMakeRefExpression, CsRefTypeExpression, CsRefValueExpression, and CsArgListExpression. |
Member Data Documentation
|
Flags (for internal purpose).
|
|
Parent node. Every node except compilation unit has parent.
|
|
AST node type enumeration.
Reimplemented in CsLiteral, CsTypeofExpression, CsSizeofExpression, CsNewObjectExpression, CsNewArrayExpression, CsAsIsExpression, CsCastUnaryExpression, CsFormalParameter, CsDelegate, CsLocalConstantDeclaration, CsLocalVariableDeclaration, CsForeachStatement, CsCatchClause, CsFixedStatement, CsStackAllocExpression, CsConstantDeclaration, CsVariableDeclaration, CsProperty, CsEvent, CsIndexer, CsOperator, CsConversionOperatorDeclaration, and CsRefValueExpression. |
|