Elsa ast nodes: Difference between revisions
Jump to navigation
Jump to search
Hendrik Tews (talk | contribs) (list of all ast nodes) |
Hendrik Tews (talk | contribs) (sorted subtype node list) |
||
| Line 58: | Line 58: | ||
== Elsa Ast Subtype nodes == | == Elsa Ast Subtype nodes == | ||
* [[Elsa Ast Type ASTTypeId|ASTTypeId]] : no subnodes | * [[Elsa Ast Type ASTTypeId|ASTTypeId]] : no subnodes | ||
| Line 69: | Line 67: | ||
* [[Elsa Ast Type Attribute|Attribute]] subnodes: | * [[Elsa Ast Type Attribute|Attribute]] subnodes: | ||
** [[Elsa Ast Type AT_empty|AT_empty]] | ** [[Elsa Ast Type AT_empty|AT_empty]] | ||
** [[Elsa Ast Type AT_func|AT_func]] | |||
** [[Elsa Ast Type AT_word|AT_word]] | ** [[Elsa Ast Type AT_word|AT_word]] | ||
* [[Elsa Ast Type AttributeSpecifier|AttributeSpecifier]] : no subnodes | * [[Elsa Ast Type AttributeSpecifier|AttributeSpecifier]] : no subnodes | ||
* [[Elsa Ast Type AttributeSpecifierList|AttributeSpecifierList]] : no subnodes | * [[Elsa Ast Type AttributeSpecifierList|AttributeSpecifierList]] : no subnodes | ||
* [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] : no subnodes | * [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] : no subnodes | ||
* [[Elsa Ast Type Condition|Condition]] subnodes: | * [[Elsa Ast Type Condition|Condition]] subnodes: | ||
** [[Elsa Ast Type CN_decl|CN_decl]] | |||
** [[Elsa Ast Type CN_expr|CN_expr]] | ** [[Elsa Ast Type CN_expr|CN_expr]] | ||
* [[Elsa Ast Type Declaration|Declaration]] : no subnodes | * [[Elsa Ast Type Declaration|Declaration]] : no subnodes | ||
* [[Elsa Ast Type Declarator|Declarator]] : no subnodes | * [[Elsa Ast Type Declarator|Declarator]] : no subnodes | ||
| Line 85: | Line 83: | ||
* [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] : no subnodes | * [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] : no subnodes | ||
* [[Elsa Ast Type Expression|Expression]] subnodes: | * [[Elsa Ast Type Expression|Expression]] subnodes: | ||
** [[Elsa Ast Type E___builtin_constant_p|E___builtin_constant_p]] | |||
** [[Elsa Ast Type E___builtin_va_arg|E___builtin_va_arg]] | |||
** [[Elsa Ast Type E_addrOf|E_addrOf]] | |||
** [[Elsa Ast Type E_addrOfLabel|E_addrOfLabel]] | |||
** [[Elsa Ast Type E_alignofExpr|E_alignofExpr]] | |||
** [[Elsa Ast Type E_alignofType|E_alignofType]] | |||
** [[Elsa Ast Type E_arrow|E_arrow]] | |||
** [[Elsa Ast Type E_assign|E_assign]] | |||
** [[Elsa Ast Type E_binary|E_binary]] | |||
** [[Elsa Ast Type E_boolLit|E_boolLit]] | ** [[Elsa Ast Type E_boolLit|E_boolLit]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_cast|E_cast]] | ||
** [[Elsa Ast Type E_charLit|E_charLit]] | ** [[Elsa Ast Type E_charLit|E_charLit]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_compoundLit|E_compoundLit]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_cond|E_cond]] | ||
** [[Elsa Ast Type E_constructor|E_constructor]] | ** [[Elsa Ast Type E_constructor|E_constructor]] | ||
** [[Elsa Ast Type E_delete|E_delete]] | |||
** [[Elsa Ast Type E_deref|E_deref]] | |||
** [[Elsa Ast Type E_effect|E_effect]] | |||
** [[Elsa Ast Type E_fieldAcc|E_fieldAcc]] | ** [[Elsa Ast Type E_fieldAcc|E_fieldAcc]] | ||
** [[Elsa Ast Type E_floatLit|E_floatLit]] | |||
** [[Elsa Ast Type E_funCall|E_funCall]] | |||
** [[Elsa Ast Type E_gnuCond|E_gnuCond]] | |||
** [[Elsa Ast Type E_grouping|E_grouping]] | |||
** [[Elsa Ast Type E_intLit|E_intLit]] | |||
** [[Elsa Ast Type E_keywordCast|E_keywordCast]] | |||
** [[Elsa Ast Type E_new|E_new]] | |||
** [[Elsa Ast Type E_sizeof|E_sizeof]] | ** [[Elsa Ast Type E_sizeof|E_sizeof]] | ||
** [[Elsa Ast Type E_sizeofType|E_sizeofType]] | ** [[Elsa Ast Type E_sizeofType|E_sizeofType]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_statement|E_statement]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_stringLit|E_stringLit]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_this|E_this]] | ||
** [[Elsa Ast Type E_throw|E_throw]] | ** [[Elsa Ast Type E_throw|E_throw]] | ||
** [[Elsa Ast Type E_typeidExpr|E_typeidExpr]] | ** [[Elsa Ast Type E_typeidExpr|E_typeidExpr]] | ||
** [[Elsa Ast Type E_typeidType|E_typeidType]] | ** [[Elsa Ast Type E_typeidType|E_typeidType]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_unary|E_unary]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type E_variable|E_variable]] | ||
* [[Elsa Ast Type FullExpression|FullExpression]] : no subnodes | * [[Elsa Ast Type FullExpression|FullExpression]] : no subnodes | ||
* [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] : no subnodes | * [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] : no subnodes | ||
| Line 126: | Line 124: | ||
* [[Elsa Ast Type Handler|Handler]] : no subnodes | * [[Elsa Ast Type Handler|Handler]] : no subnodes | ||
* [[Elsa Ast Type IDeclarator|IDeclarator]] subnodes: | * [[Elsa Ast Type IDeclarator|IDeclarator]] subnodes: | ||
** [[Elsa Ast Type D_array|D_array]] | |||
** [[Elsa Ast Type D_bitfield|D_bitfield]] | |||
** [[Elsa Ast Type D_func|D_func]] | |||
** [[Elsa Ast Type D_grouping|D_grouping]] | |||
** [[Elsa Ast Type D_name|D_name]] | ** [[Elsa Ast Type D_name|D_name]] | ||
** [[Elsa Ast Type D_pointer|D_pointer]] | ** [[Elsa Ast Type D_pointer|D_pointer]] | ||
** [[Elsa Ast Type D_ptrToMember|D_ptrToMember]] | |||
** [[Elsa Ast Type D_reference|D_reference]] | ** [[Elsa Ast Type D_reference|D_reference]] | ||
* [[Elsa Ast Type InheritedTemplateParams|InheritedTemplateParams]] : no subnodes | * [[Elsa Ast Type InheritedTemplateParams|InheritedTemplateParams]] : no subnodes | ||
* [[Elsa Ast Type Initializer|Initializer]] subnodes: | * [[Elsa Ast Type Initializer|Initializer]] subnodes: | ||
** [[Elsa Ast Type IN_compound|IN_compound]] | ** [[Elsa Ast Type IN_compound|IN_compound]] | ||
** [[Elsa Ast Type IN_ctor|IN_ctor]] | ** [[Elsa Ast Type IN_ctor|IN_ctor]] | ||
** [[Elsa Ast Type IN_designated|IN_designated]] | ** [[Elsa Ast Type IN_designated|IN_designated]] | ||
** [[Elsa Ast Type IN_expr|IN_expr]] | |||
* [[Elsa Ast Type Member|Member]] subnodes: | * [[Elsa Ast Type Member|Member]] subnodes: | ||
** [[Elsa Ast Type MR_access|MR_access]] | |||
** [[Elsa Ast Type MR_decl|MR_decl]] | ** [[Elsa Ast Type MR_decl|MR_decl]] | ||
** [[Elsa Ast Type MR_func|MR_func]] | ** [[Elsa Ast Type MR_func|MR_func]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type MR_template|MR_template]] | ||
** [[Elsa Ast Type MR_usingDecl|MR_usingDecl]] | ** [[Elsa Ast Type MR_usingDecl|MR_usingDecl]] | ||
* [[Elsa Ast Type MemberInit|MemberInit]] : no subnodes | * [[Elsa Ast Type MemberInit|MemberInit]] : no subnodes | ||
* [[Elsa Ast Type MemberList|MemberList]] : no subnodes | * [[Elsa Ast Type MemberList|MemberList]] : no subnodes | ||
| Line 153: | Line 151: | ||
** [[Elsa Ast Type ND_usingDir|ND_usingDir]] | ** [[Elsa Ast Type ND_usingDir|ND_usingDir]] | ||
* [[Elsa Ast Type OperatorName|OperatorName]] subnodes: | * [[Elsa Ast Type OperatorName|OperatorName]] subnodes: | ||
** [[Elsa Ast Type ON_conversion|ON_conversion]] | |||
** [[Elsa Ast Type ON_newDel|ON_newDel]] | ** [[Elsa Ast Type ON_newDel|ON_newDel]] | ||
** [[Elsa Ast Type ON_operator|ON_operator]] | ** [[Elsa Ast Type ON_operator|ON_operator]] | ||
* [[Elsa Ast Type PQName|PQName]] subnodes: | * [[Elsa Ast Type PQName|PQName]] subnodes: | ||
** [[Elsa Ast Type PQ_name|PQ_name]] | ** [[Elsa Ast Type PQ_name|PQ_name]] | ||
** [[Elsa Ast Type PQ_operator|PQ_operator]] | ** [[Elsa Ast Type PQ_operator|PQ_operator]] | ||
** [[Elsa Ast Type PQ_qualifier|PQ_qualifier]] | |||
** [[Elsa Ast Type PQ_template|PQ_template]] | ** [[Elsa Ast Type PQ_template|PQ_template]] | ||
** [[Elsa Ast Type PQ_variable|PQ_variable]] | ** [[Elsa Ast Type PQ_variable|PQ_variable]] | ||
* [[Elsa Ast Type Statement|Statement]] subnodes: | * [[Elsa Ast Type Statement|Statement]] subnodes: | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_asm|S_asm]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_break|S_break]] | ||
** [[Elsa Ast Type S_case|S_case]] | ** [[Elsa Ast Type S_case|S_case]] | ||
** [[Elsa Ast Type S_compound|S_compound]] | |||
** [[Elsa Ast Type S_computedGoto|S_computedGoto]] | |||
** [[Elsa Ast Type S_continue|S_continue]] | |||
** [[Elsa Ast Type S_decl|S_decl]] | |||
** [[Elsa Ast Type S_default|S_default]] | ** [[Elsa Ast Type S_default|S_default]] | ||
** [[Elsa Ast Type S_doWhile|S_doWhile]] | |||
** [[Elsa Ast Type S_expr|S_expr]] | ** [[Elsa Ast Type S_expr|S_expr]] | ||
** [[Elsa Ast Type S_for|S_for]] | ** [[Elsa Ast Type S_for|S_for]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_function|S_function]] | ||
** [[Elsa Ast Type S_goto|S_goto]] | ** [[Elsa Ast Type S_goto|S_goto]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_if|S_if]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_label|S_label]] | ||
** [[Elsa Ast Type S_namespaceDecl|S_namespaceDecl]] | ** [[Elsa Ast Type S_namespaceDecl|S_namespaceDecl]] | ||
** [[Elsa Ast Type S_rangeCase|S_rangeCase]] | ** [[Elsa Ast Type S_rangeCase|S_rangeCase]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type S_return|S_return]] | ||
** [[Elsa Ast Type S_skip|S_skip]] | |||
** [[Elsa Ast Type S_switch|S_switch]] | |||
** [[Elsa Ast Type S_try|S_try]] | |||
** [[Elsa Ast Type S_while|S_while]] | |||
* [[Elsa Ast Type TemplateArgument|TemplateArgument]] subnodes: | * [[Elsa Ast Type TemplateArgument|TemplateArgument]] subnodes: | ||
** [[Elsa Ast Type TA_nontype|TA_nontype]] | ** [[Elsa Ast Type TA_nontype|TA_nontype]] | ||
** [[Elsa Ast Type TA_templateUsed|TA_templateUsed]] | ** [[Elsa Ast Type TA_templateUsed|TA_templateUsed]] | ||
** [[Elsa Ast Type TA_type|TA_type]] | |||
* [[Elsa Ast Type TemplateDeclaration|TemplateDeclaration]] subnodes: | * [[Elsa Ast Type TemplateDeclaration|TemplateDeclaration]] subnodes: | ||
** [[Elsa Ast Type TD_decl|TD_decl]] | |||
** [[Elsa Ast Type TD_func|TD_func]] | ** [[Elsa Ast Type TD_func|TD_func]] | ||
** [[Elsa Ast Type TD_tmember|TD_tmember]] | ** [[Elsa Ast Type TD_tmember|TD_tmember]] | ||
* [[Elsa Ast Type TemplateInfo|TemplateInfo]] : no subnodes | * [[Elsa Ast Type TemplateInfo|TemplateInfo]] : no subnodes | ||
* [[Elsa Ast Type TemplateParameter|TemplateParameter]] subnodes: | * [[Elsa Ast Type TemplateParameter|TemplateParameter]] subnodes: | ||
** [[Elsa Ast Type TP_nontype|TP_nontype]] | |||
** [[Elsa Ast Type TP_type|TP_type]] | ** [[Elsa Ast Type TP_type|TP_type]] | ||
* [[Elsa Ast Type TopForm|TopForm]] subnodes: | * [[Elsa Ast Type TopForm|TopForm]] subnodes: | ||
** [[Elsa Ast Type TF_asm|TF_asm]] | |||
** [[Elsa Ast Type TF_decl|TF_decl]] | ** [[Elsa Ast Type TF_decl|TF_decl]] | ||
** [[Elsa Ast Type TF_explicitInst|TF_explicitInst]] | |||
** [[Elsa Ast Type TF_func|TF_func]] | ** [[Elsa Ast Type TF_func|TF_func]] | ||
** [[Elsa Ast Type TF_linkage|TF_linkage]] | ** [[Elsa Ast Type TF_linkage|TF_linkage]] | ||
** [[Elsa Ast Type TF_namespaceDecl|TF_namespaceDecl]] | |||
** [[Elsa Ast Type TF_namespaceDefn|TF_namespaceDefn]] | |||
** [[Elsa Ast Type TF_one_linkage|TF_one_linkage]] | ** [[Elsa Ast Type TF_one_linkage|TF_one_linkage]] | ||
** [[Elsa Ast Type | ** [[Elsa Ast Type TF_template|TF_template]] | ||
* [[Elsa Ast Type TranslationUnit|TranslationUnit]] : no subnodes | * [[Elsa Ast Type TranslationUnit|TranslationUnit]] : no subnodes | ||
* [[Elsa Ast Type TypeSpecifier|TypeSpecifier]] subnodes: | * [[Elsa Ast Type TypeSpecifier|TypeSpecifier]] subnodes: | ||
** [[Elsa Ast Type TS_classSpec|TS_classSpec]] | |||
** [[Elsa Ast Type TS_elaborated|TS_elaborated]] | |||
** [[Elsa Ast Type TS_enumSpec|TS_enumSpec]] | |||
** [[Elsa Ast Type TS_name|TS_name]] | ** [[Elsa Ast Type TS_name|TS_name]] | ||
** [[Elsa Ast Type TS_simple|TS_simple]] | ** [[Elsa Ast Type TS_simple|TS_simple]] | ||
** [[Elsa Ast Type TS_type|TS_type]] | ** [[Elsa Ast Type TS_type|TS_type]] | ||
** [[Elsa Ast Type TS_typeof|TS_typeof]] | ** [[Elsa Ast Type TS_typeof|TS_typeof]] | ||
* [[Elsa Ast Type Variable|Variable]] : no subnodes | * [[Elsa Ast Type Variable|Variable]] : no subnodes | ||
Revision as of 07:53, 24 August 2007
This page gives an overview over all Elsa Ast node types. For each node type it links to a page describing this type. Disclaimer: The information here has been generated automatically from the Olmar branch and might therefore be not completely accurate for Elsa.
Elsa Ast nodes use a variant scheme with super- and subtypes. For
instance there is the node type
Statement with variants for each
different statement type, for instance
S_if for if-statements and
S_while for while loops.
It first follows a table with just the supertype nodes. Further below there is also a table with all subtype nodes.
Elsa Ast Supertype nodes
- ASTTypeId
- ASTTypeof
- ArgExpression
- ArgExpressionListOpt
- Attribute
- AttributeSpecifier
- AttributeSpecifierList
- BaseClassSpec
- Condition
- Declaration
- Declarator
- Designator
- Enumerator
- ExceptionSpec
- Expression
- FullExpression
- FullExpressionAnnot
- Function
- Handler
- IDeclarator
- InheritedTemplateParams
- Initializer
- Member
- MemberInit
- MemberList
- NamespaceDecl
- OperatorName
- PQName
- Statement
- TemplateArgument
- TemplateDeclaration
- TemplateInfo
- TemplateParameter
- TopForm
- TranslationUnit
- TypeSpecifier
- Variable
Elsa Ast Subtype nodes
- ASTTypeId : no subnodes
- ASTTypeof subnodes:
- ArgExpression : no subnodes
- ArgExpressionListOpt : no subnodes
- Attribute subnodes:
- AttributeSpecifier : no subnodes
- AttributeSpecifierList : no subnodes
- BaseClassSpec : no subnodes
- Condition subnodes:
- Declaration : no subnodes
- Declarator : no subnodes
- Designator subnodes:
- Enumerator : no subnodes
- ExceptionSpec : no subnodes
- Expression subnodes:
- E___builtin_constant_p
- E___builtin_va_arg
- E_addrOf
- E_addrOfLabel
- E_alignofExpr
- E_alignofType
- E_arrow
- E_assign
- E_binary
- E_boolLit
- E_cast
- E_charLit
- E_compoundLit
- E_cond
- E_constructor
- E_delete
- E_deref
- E_effect
- E_fieldAcc
- E_floatLit
- E_funCall
- E_gnuCond
- E_grouping
- E_intLit
- E_keywordCast
- E_new
- E_sizeof
- E_sizeofType
- E_statement
- E_stringLit
- E_this
- E_throw
- E_typeidExpr
- E_typeidType
- E_unary
- E_variable
- FullExpression : no subnodes
- FullExpressionAnnot : no subnodes
- Function : no subnodes
- Handler : no subnodes
- IDeclarator subnodes:
- InheritedTemplateParams : no subnodes
- Initializer subnodes:
- Member subnodes:
- MemberInit : no subnodes
- MemberList : no subnodes
- NamespaceDecl subnodes:
- OperatorName subnodes:
- PQName subnodes:
- Statement subnodes:
- TemplateArgument subnodes:
- TemplateDeclaration subnodes:
- TemplateInfo : no subnodes
- TemplateParameter subnodes:
- TopForm subnodes:
- TranslationUnit : no subnodes
- TypeSpecifier subnodes:
- Variable : no subnodes