Elsa ast nodes: Difference between revisions
Jump to navigation
Jump to search
Hendrik Tews (talk | contribs) (undo last change) |
(update to olmar v2) |
||
| Line 17: | Line 17: | ||
<!-- OLMAR SEPARATION LINE: ADD YOUR MODIFICATIONS OBOVE! --> | <!-- OLMAR SEPARATION LINE: ADD YOUR MODIFICATIONS OBOVE! --> | ||
== Olmar Ast Supertype nodes without subtypes == | |||
* [[Elsa Ast Type ASTTypeId|ASTTypeId]] | * [[Elsa Ast Type ASTTypeId|ASTTypeId]] | ||
* [[Elsa Ast Type ASTTypeof|ASTTypeof]] | * [[Elsa Ast Type ASTTypeof|ASTTypeof]] | ||
* [[Elsa Ast Type ArgExpression|ArgExpression]] | * [[Elsa Ast Type ArgExpression|ArgExpression]] | ||
* [[Elsa Ast Type ArgExpressionListOpt|ArgExpressionListOpt]] | * [[Elsa Ast Type ArgExpressionListOpt|ArgExpressionListOpt]] | ||
* [[Elsa Ast Type AtomicType|AtomicType]] | |||
* [[Elsa Ast Type Attribute|Attribute]] | * [[Elsa Ast Type Attribute|Attribute]] | ||
* [[Elsa Ast Type AttributeSpecifier|AttributeSpecifier]] | * [[Elsa Ast Type AttributeSpecifier|AttributeSpecifier]] | ||
* [[Elsa Ast Type AttributeSpecifierList|AttributeSpecifierList]] | * [[Elsa Ast Type AttributeSpecifierList|AttributeSpecifierList]] | ||
* [[Elsa Ast Type BaseClass|BaseClass]] | |||
* [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] | * [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] | ||
* [[Elsa Ast Type BaseClassSubobj|BaseClassSubobj]] | |||
* [[Elsa Ast Type CType|CType]] | |||
* [[Elsa Ast Type CompilationUnit|CompilationUnit]] | |||
* [[Elsa Ast Type Condition|Condition]] | * [[Elsa Ast Type Condition|Condition]] | ||
* [[Elsa Ast Type Declaration|Declaration]] | * [[Elsa Ast Type Declaration|Declaration]] | ||
* [[Elsa Ast Type Declarator|Declarator]] | * [[Elsa Ast Type Declarator|Declarator]] | ||
* [[Elsa Ast Type Designator|Designator]] | * [[Elsa Ast Type Designator|Designator]] | ||
* [[Elsa Ast Type EnumValue|EnumValue]] | |||
* [[Elsa Ast Type Enumerator|Enumerator]] | * [[Elsa Ast Type Enumerator|Enumerator]] | ||
* [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] | * [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] | ||
| Line 36: | Line 43: | ||
* [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] | * [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] | ||
* [[Elsa Ast Type Function|Function]] | * [[Elsa Ast Type Function|Function]] | ||
* [[Elsa Ast Type FunctionExnSpec|FunctionExnSpec]] | |||
* [[Elsa Ast Type Handler|Handler]] | * [[Elsa Ast Type Handler|Handler]] | ||
* [[Elsa Ast Type IDeclarator|IDeclarator]] | * [[Elsa Ast Type IDeclarator|IDeclarator]] | ||
| Line 45: | Line 53: | ||
* [[Elsa Ast Type NamespaceDecl|NamespaceDecl]] | * [[Elsa Ast Type NamespaceDecl|NamespaceDecl]] | ||
* [[Elsa Ast Type OperatorName|OperatorName]] | * [[Elsa Ast Type OperatorName|OperatorName]] | ||
* [[Elsa Ast Type OverloadSet|OverloadSet]] | |||
* [[Elsa Ast Type PQName|PQName]] | * [[Elsa Ast Type PQName|PQName]] | ||
* [[Elsa Ast Type STemplateArgument|STemplateArgument]] | |||
* [[Elsa Ast Type Scope|Scope]] | |||
* [[Elsa Ast Type Statement|Statement]] | * [[Elsa Ast Type Statement|Statement]] | ||
* [[Elsa Ast Type TemplateArgument|TemplateArgument]] | * [[Elsa Ast Type TemplateArgument|TemplateArgument]] | ||
| Line 56: | Line 67: | ||
* [[Elsa Ast Type Variable|Variable]] | * [[Elsa Ast Type Variable|Variable]] | ||
== Olmar Ast Supertype nodes with subtypes == | |||
* [[Elsa Ast Type ASTTypeId|ASTTypeId]] : no subnodes | * [[Elsa Ast Type ASTTypeId|ASTTypeId]] : no subnodes | ||
| Line 63: | Line 75: | ||
* [[Elsa Ast Type ArgExpression|ArgExpression]] : no subnodes | * [[Elsa Ast Type ArgExpression|ArgExpression]] : no subnodes | ||
* [[Elsa Ast Type ArgExpressionListOpt|ArgExpressionListOpt]] : no subnodes | * [[Elsa Ast Type ArgExpressionListOpt|ArgExpressionListOpt]] : no subnodes | ||
* [[Elsa Ast Type AtomicType|AtomicType]] subnodes: | |||
** [[Elsa Ast Type ATY_Compound|ATY_Compound]] | |||
** [[Elsa Ast Type ATY_DependentQ|ATY_DependentQ]] | |||
** [[Elsa Ast Type ATY_Enum|ATY_Enum]] | |||
** [[Elsa Ast Type ATY_PseudoInstantiation|ATY_PseudoInstantiation]] | |||
** [[Elsa Ast Type ATY_Simple|ATY_Simple]] | |||
** [[Elsa Ast Type ATY_TypeVariable|ATY_TypeVariable]] | |||
* [[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]] | ||
| Line 69: | Line 88: | ||
* [[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 BaseClass|BaseClass]] : no subnodes | |||
* [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] : no subnodes | * [[Elsa Ast Type BaseClassSpec|BaseClassSpec]] : no subnodes | ||
* [[Elsa Ast Type BaseClassSubobj|BaseClassSubobj]] : no subnodes | |||
* [[Elsa Ast Type CType|CType]] subnodes: | |||
** [[Elsa Ast Type TY_ArrayType|TY_ArrayType]] | |||
** [[Elsa Ast Type TY_CVAtomicType|TY_CVAtomicType]] | |||
** [[Elsa Ast Type TY_DependentSizedArrayType|TY_DependentSizedArrayType]] | |||
** [[Elsa Ast Type TY_FunctionType|TY_FunctionType]] | |||
** [[Elsa Ast Type TY_PointerToMemberType|TY_PointerToMemberType]] | |||
** [[Elsa Ast Type TY_PointerType|TY_PointerType]] | |||
** [[Elsa Ast Type TY_ReferenceType|TY_ReferenceType]] | |||
* [[Elsa Ast Type CompilationUnit|CompilationUnit]] : 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_decl|CN_decl]] | ||
| Line 78: | Line 108: | ||
** [[Elsa Ast Type FieldDesignator|FieldDesignator]] | ** [[Elsa Ast Type FieldDesignator|FieldDesignator]] | ||
** [[Elsa Ast Type SubscriptDesignator|SubscriptDesignator]] | ** [[Elsa Ast Type SubscriptDesignator|SubscriptDesignator]] | ||
* [[Elsa Ast Type EnumValue|EnumValue]] : no subnodes | |||
* [[Elsa Ast Type Enumerator|Enumerator]] : no subnodes | * [[Elsa Ast Type Enumerator|Enumerator]] : no subnodes | ||
* [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] : no subnodes | * [[Elsa Ast Type ExceptionSpec|ExceptionSpec]] : no subnodes | ||
| Line 110: | Line 141: | ||
** [[Elsa Ast Type E_sizeofType|E_sizeofType]] | ** [[Elsa Ast Type E_sizeofType|E_sizeofType]] | ||
** [[Elsa Ast Type E_statement|E_statement]] | ** [[Elsa Ast Type E_statement|E_statement]] | ||
** [[Elsa Ast Type E_stdConv|E_stdConv]] | |||
** [[Elsa Ast Type E_stringLit|E_stringLit]] | ** [[Elsa Ast Type E_stringLit|E_stringLit]] | ||
** [[Elsa Ast Type E_this|E_this]] | ** [[Elsa Ast Type E_this|E_this]] | ||
| Line 120: | Line 152: | ||
* [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] : no subnodes | * [[Elsa Ast Type FullExpressionAnnot|FullExpressionAnnot]] : no subnodes | ||
* [[Elsa Ast Type Function|Function]] : no subnodes | * [[Elsa Ast Type Function|Function]] : no subnodes | ||
* [[Elsa Ast Type FunctionExnSpec|FunctionExnSpec]] : no subnodes | |||
* [[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: | ||
| Line 152: | Line 185: | ||
** [[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 OverloadSet|OverloadSet]] : no subnodes | |||
* [[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]] | ||
| Line 158: | Line 192: | ||
** [[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 STemplateArgument|STemplateArgument]] subnodes: | |||
** [[Elsa Ast Type STA_ATOMIC|STA_ATOMIC]] | |||
** [[Elsa Ast Type STA_DEPEXPR|STA_DEPEXPR]] | |||
** [[Elsa Ast Type STA_ENUMERATOR|STA_ENUMERATOR]] | |||
** [[Elsa Ast Type STA_INT|STA_INT]] | |||
** [[Elsa Ast Type STA_MEMBER|STA_MEMBER]] | |||
** [[Elsa Ast Type STA_NONE|STA_NONE]] | |||
** [[Elsa Ast Type STA_POINTER|STA_POINTER]] | |||
** [[Elsa Ast Type STA_REFERENCE|STA_REFERENCE]] | |||
** [[Elsa Ast Type STA_TEMPLATE|STA_TEMPLATE]] | |||
** [[Elsa Ast Type STA_TYPE|STA_TYPE]] | |||
* [[Elsa Ast Type Scope|Scope]] : no subnodes | |||
* [[Elsa Ast Type Statement|Statement]] subnodes: | * [[Elsa Ast Type Statement|Statement]] subnodes: | ||
** [[Elsa Ast Type S_asm|S_asm]] | ** [[Elsa Ast Type S_asm|S_asm]] | ||
| Line 213: | Line 259: | ||
** [[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 | ||
<!-- easy to parse list of all node types | <!-- easy to parse list of all node types | ||
wiki page name prefix: Elsa Ast Type | Renamings: PointerToMemberType DependentSizedArrayType ArrayType FunctionType ReferenceType PointerType CVAtomicType DependentQType TypeVariable PseudoInstantiation EnumType CompoundType SimpleType | ||
wiki page name prefix: Elsa Ast Type | |||
CompilationUnit | |||
TranslationUnit | |||
TopForm TF_decl TF_func TF_template TF_explicitInst TF_linkage TF_one_linkage TF_asm TF_namespaceDefn TF_namespaceDecl | |||
Function | |||
MemberInit | |||
Declaration | |||
ASTTypeId | ASTTypeId | ||
PQName PQ_qualifier PQ_name PQ_operator PQ_template PQ_variable | |||
TypeSpecifier TS_name TS_simple TS_elaborated TS_classSpec TS_enumSpec TS_type TS_typeof | |||
BaseClassSpec | BaseClassSpec | ||
Enumerator | Enumerator | ||
MemberList | |||
Member MR_decl MR_func MR_access MR_usingDecl MR_template | |||
ExceptionSpec | ExceptionSpec | ||
Expression E_boolLit E_intLit E_floatLit E_stringLit E_charLit E_this E_variable E_funCall E_constructor E_fieldAcc E_sizeof E_unary E_effect E_binary E_addrOf E_deref E_cast E_cond E_sizeofType E_assign E_new E_delete E_throw E_keywordCast E_typeidExpr E_typeidType E_grouping E_arrow E_statement E_compoundLit E___builtin_constant_p E___builtin_va_arg E_alignofType E_alignofExpr E_gnuCond E_addrOfLabel | OperatorName ON_newDel ON_operator ON_conversion | ||
Statement S_skip S_label S_case S_default S_expr S_compound S_if S_switch S_while S_doWhile S_for S_break S_continue S_return S_goto S_decl S_try S_asm S_namespaceDecl S_function S_rangeCase S_computedGoto | |||
Condition CN_expr CN_decl | |||
Handler | |||
Expression E_boolLit E_intLit E_floatLit E_stringLit E_charLit E_this E_variable E_funCall E_constructor E_fieldAcc E_sizeof E_unary E_effect E_binary E_addrOf E_deref E_cast E_cond E_sizeofType E_assign E_new E_delete E_throw E_keywordCast E_typeidExpr E_typeidType E_grouping E_arrow E_stdConv E_statement E_compoundLit E___builtin_constant_p E___builtin_va_arg E_alignofType E_alignofExpr E_gnuCond E_addrOfLabel | |||
FullExpression | FullExpression | ||
ArgExpression | |||
ArgExpressionListOpt | |||
Initializer IN_expr IN_compound IN_ctor IN_designated | Initializer IN_expr IN_compound IN_ctor IN_designated | ||
TemplateDeclaration TD_func TD_decl TD_tmember | TemplateDeclaration TD_func TD_decl TD_tmember | ||
TemplateParameter TP_type TP_nontype | TemplateParameter TP_type TP_nontype | ||
TemplateArgument TA_type TA_nontype TA_templateUsed | |||
NamespaceDecl ND_alias ND_usingDecl ND_usingDir | |||
Declarator | |||
IDeclarator D_name D_pointer D_reference D_func D_array D_bitfield D_ptrToMember D_grouping | |||
FullExpressionAnnot | |||
ASTTypeof TS_typeof_expr TS_typeof_type | |||
Designator FieldDesignator SubscriptDesignator | |||
AttributeSpecifierList | |||
AttributeSpecifier | |||
Attribute AT_empty AT_word AT_func | |||
Variable | Variable | ||
OverloadSet | |||
TemplateInfo | |||
InheritedTemplateParams | |||
BaseClass | |||
BaseClassSubobj | |||
EnumValue | |||
AtomicType ATY_Simple ATY_Compound ATY_Enum ATY_PseudoInstantiation ATY_TypeVariable ATY_DependentQ | |||
FunctionExnSpec | |||
CType TY_CVAtomicType TY_PointerType TY_ReferenceType TY_FunctionType TY_ArrayType TY_DependentSizedArrayType TY_PointerToMemberType | |||
STemplateArgument STA_NONE STA_TYPE STA_INT STA_ENUMERATOR STA_REFERENCE STA_POINTER STA_MEMBER STA_DEPEXPR STA_TEMPLATE STA_ATOMIC | |||
Scope | |||
end of node type list --> | end of node type list --> | ||
Revision as of 22:04, 22 November 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
Olmar Ast Supertype nodes without subtypes
- ASTTypeId
- ASTTypeof
- ArgExpression
- ArgExpressionListOpt
- AtomicType
- Attribute
- AttributeSpecifier
- AttributeSpecifierList
- BaseClass
- BaseClassSpec
- BaseClassSubobj
- CType
- CompilationUnit
- Condition
- Declaration
- Declarator
- Designator
- EnumValue
- Enumerator
- ExceptionSpec
- Expression
- FullExpression
- FullExpressionAnnot
- Function
- FunctionExnSpec
- Handler
- IDeclarator
- InheritedTemplateParams
- Initializer
- Member
- MemberInit
- MemberList
- NamespaceDecl
- OperatorName
- OverloadSet
- PQName
- STemplateArgument
- Scope
- Statement
- TemplateArgument
- TemplateDeclaration
- TemplateInfo
- TemplateParameter
- TopForm
- TranslationUnit
- TypeSpecifier
- Variable
Olmar Ast Supertype nodes with subtypes
- ASTTypeId : no subnodes
- ASTTypeof subnodes:
- ArgExpression : no subnodes
- ArgExpressionListOpt : no subnodes
- AtomicType subnodes:
- Attribute subnodes:
- AttributeSpecifier : no subnodes
- AttributeSpecifierList : no subnodes
- BaseClass : no subnodes
- BaseClassSpec : no subnodes
- BaseClassSubobj : no subnodes
- CType subnodes:
- CompilationUnit : no subnodes
- Condition subnodes:
- Declaration : no subnodes
- Declarator : no subnodes
- Designator subnodes:
- EnumValue : no 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_stdConv
- E_stringLit
- E_this
- E_throw
- E_typeidExpr
- E_typeidType
- E_unary
- E_variable
- FullExpression : no subnodes
- FullExpressionAnnot : no subnodes
- Function : no subnodes
- FunctionExnSpec : no subnodes
- Handler : no subnodes
- IDeclarator subnodes:
- InheritedTemplateParams : no subnodes
- Initializer subnodes:
- Member subnodes:
- MemberInit : no subnodes
- MemberList : no subnodes
- NamespaceDecl subnodes:
- OperatorName subnodes:
- OverloadSet : no subnodes
- PQName subnodes:
- STemplateArgument subnodes:
- Scope : no subnodes
- Statement subnodes:
- TemplateArgument subnodes:
- TemplateDeclaration subnodes:
- TemplateInfo : no subnodes
- TemplateParameter subnodes:
- TopForm subnodes:
- TranslationUnit : no subnodes
- TypeSpecifier subnodes:
- Variable : no subnodes