diff options
author | Christian Kamm <christian.d.kamm@nokia.com> | 2011-01-05 12:17:57 +0100 |
---|---|---|
committer | Christian Kamm <christian.d.kamm@nokia.com> | 2011-01-06 15:01:52 +0100 |
commit | d6a418fc5d4373f3a6b84838c86af718aa81d58a (patch) | |
tree | b82a8d9801b79b0d7185c97738fa14eec875f750 /src/shared/cplusplus | |
parent | 261c4f1d70ef0937a2e419e1168969c6129961aa (diff) | |
download | qt-creator-d6a418fc5d4373f3a6b84838c86af718aa81d58a.tar.gz |
C++: Update and improve ASTPatternBuilder.
* Updated for new AST nodes.
* Now also includes helpers for building Lists.
Reviewed-by: Erik Verbruggen
Diffstat (limited to 'src/shared/cplusplus')
-rw-r--r-- | src/shared/cplusplus/ASTPatternBuilder.h | 535 |
1 files changed, 475 insertions, 60 deletions
diff --git a/src/shared/cplusplus/ASTPatternBuilder.h b/src/shared/cplusplus/ASTPatternBuilder.h index bfc1e6d269..32c57bf144 100644 --- a/src/shared/cplusplus/ASTPatternBuilder.h +++ b/src/shared/cplusplus/ASTPatternBuilder.h @@ -30,6 +30,15 @@ ** Nokia at qt-info@nokia.com. ** **************************************************************************/ + +// +// W A R N I N G +// ------------- +// +// This file is automatically generated. +// Changes will be lost. +// + #ifndef CPLUSPLUS_AST_PATTERN_BUILDER_H #define CPLUSPLUS_AST_PATTERN_BUILDER_H @@ -45,25 +54,39 @@ class CPLUSPLUS_EXPORT ASTPatternBuilder public: ASTPatternBuilder() {} - ~ASTPatternBuilder() {} void reset() { pool.reset(); } + ObjCSelectorArgumentAST *ObjCSelectorArgument() + { + ObjCSelectorArgumentAST *__ast = new (&pool) ObjCSelectorArgumentAST; + return __ast; + } + + ObjCSelectorAST *ObjCSelector(ObjCSelectorArgumentListAST *selector_argument_list = 0) + { + ObjCSelectorAST *__ast = new (&pool) ObjCSelectorAST; + __ast->selector_argument_list = selector_argument_list; + return __ast; + } + SimpleSpecifierAST *SimpleSpecifier() { SimpleSpecifierAST *__ast = new (&pool) SimpleSpecifierAST; return __ast; } - AttributeSpecifierAST *AttributeSpecifier() + AttributeSpecifierAST *AttributeSpecifier(AttributeListAST *attribute_list = 0) { AttributeSpecifierAST *__ast = new (&pool) AttributeSpecifierAST; + __ast->attribute_list = attribute_list; return __ast; } - AttributeAST *Attribute() + AttributeAST *Attribute(ExpressionListAST *expression_list = 0) { AttributeAST *__ast = new (&pool) AttributeAST; + __ast->expression_list = expression_list; return __ast; } @@ -74,17 +97,23 @@ public: return __ast; } - DeclaratorAST *Declarator(CoreDeclaratorAST *core_declarator = 0, ExpressionAST *initializer = 0) + DeclaratorAST *Declarator(SpecifierListAST *attribute_list = 0, PtrOperatorListAST *ptr_operator_list = 0, CoreDeclaratorAST *core_declarator = 0, PostfixDeclaratorListAST *postfix_declarator_list = 0, SpecifierListAST *post_attribute_list = 0, ExpressionAST *initializer = 0) { DeclaratorAST *__ast = new (&pool) DeclaratorAST; + __ast->attribute_list = attribute_list; + __ast->ptr_operator_list = ptr_operator_list; __ast->core_declarator = core_declarator; + __ast->postfix_declarator_list = postfix_declarator_list; + __ast->post_attribute_list = post_attribute_list; __ast->initializer = initializer; return __ast; } - SimpleDeclarationAST *SimpleDeclaration() + SimpleDeclarationAST *SimpleDeclaration(SpecifierListAST *decl_specifier_list = 0, DeclaratorListAST *declarator_list = 0) { SimpleDeclarationAST *__ast = new (&pool) SimpleDeclarationAST; + __ast->decl_specifier_list = decl_specifier_list; + __ast->declarator_list = declarator_list; return __ast; } @@ -100,6 +129,66 @@ public: return __ast; } + QtObjectTagAST *QtObjectTag() + { + QtObjectTagAST *__ast = new (&pool) QtObjectTagAST; + return __ast; + } + + QtPrivateSlotAST *QtPrivateSlot(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0) + { + QtPrivateSlotAST *__ast = new (&pool) QtPrivateSlotAST; + __ast->type_specifier_list = type_specifier_list; + __ast->declarator = declarator; + return __ast; + } + + QtPropertyDeclarationItemAST *QtPropertyDeclarationItem(ExpressionAST *expression = 0) + { + QtPropertyDeclarationItemAST *__ast = new (&pool) QtPropertyDeclarationItemAST; + __ast->expression = expression; + return __ast; + } + + QtPropertyDeclarationAST *QtPropertyDeclaration(ExpressionAST *expression = 0, ExpressionAST *type_id = 0, NameAST *property_name = 0, QtPropertyDeclarationItemListAST *property_declaration_item_list = 0) + { + QtPropertyDeclarationAST *__ast = new (&pool) QtPropertyDeclarationAST; + __ast->expression = expression; + __ast->type_id = type_id; + __ast->property_name = property_name; + __ast->property_declaration_item_list = property_declaration_item_list; + return __ast; + } + + QtEnumDeclarationAST *QtEnumDeclaration(NameListAST *enumerator_list = 0) + { + QtEnumDeclarationAST *__ast = new (&pool) QtEnumDeclarationAST; + __ast->enumerator_list = enumerator_list; + return __ast; + } + + QtFlagsDeclarationAST *QtFlagsDeclaration(NameListAST *flag_enums_list = 0) + { + QtFlagsDeclarationAST *__ast = new (&pool) QtFlagsDeclarationAST; + __ast->flag_enums_list = flag_enums_list; + return __ast; + } + + QtInterfaceNameAST *QtInterfaceName(NameAST *interface_name = 0, NameListAST *constraint_list = 0) + { + QtInterfaceNameAST *__ast = new (&pool) QtInterfaceNameAST; + __ast->interface_name = interface_name; + __ast->constraint_list = constraint_list; + return __ast; + } + + QtInterfacesDeclarationAST *QtInterfacesDeclaration(QtInterfaceNameListAST *interface_name_list = 0) + { + QtInterfacesDeclarationAST *__ast = new (&pool) QtInterfacesDeclarationAST; + __ast->interface_name_list = interface_name_list; + return __ast; + } + AsmDefinitionAST *AsmDefinition() { AsmDefinitionAST *__ast = new (&pool) AsmDefinitionAST; @@ -113,6 +202,20 @@ public: return __ast; } + IdExpressionAST *IdExpression(NameAST *name = 0) + { + IdExpressionAST *__ast = new (&pool) IdExpressionAST; + __ast->name = name; + return __ast; + } + + CompoundExpressionAST *CompoundExpression(CompoundStatementAST *statement = 0) + { + CompoundExpressionAST *__ast = new (&pool) CompoundExpressionAST; + __ast->statement = statement; + return __ast; + } + CompoundLiteralAST *CompoundLiteral(ExpressionAST *type_id = 0, ExpressionAST *initializer = 0) { CompoundLiteralAST *__ast = new (&pool) CompoundLiteralAST; @@ -128,6 +231,13 @@ public: return __ast; } + QtMemberDeclarationAST *QtMemberDeclaration(ExpressionAST *type_id = 0) + { + QtMemberDeclarationAST *__ast = new (&pool) QtMemberDeclarationAST; + __ast->type_id = type_id; + return __ast; + } + BinaryExpressionAST *BinaryExpression(ExpressionAST *left_expression = 0, ExpressionAST *right_expression = 0) { BinaryExpressionAST *__ast = new (&pool) BinaryExpressionAST; @@ -144,10 +254,13 @@ public: return __ast; } - ClassSpecifierAST *ClassSpecifier(NameAST *name = 0) + ClassSpecifierAST *ClassSpecifier(SpecifierListAST *attribute_list = 0, NameAST *name = 0, BaseSpecifierListAST *base_clause_list = 0, DeclarationListAST *member_specifier_list = 0) { ClassSpecifierAST *__ast = new (&pool) ClassSpecifierAST; + __ast->attribute_list = attribute_list; __ast->name = name; + __ast->base_clause_list = base_clause_list; + __ast->member_specifier_list = member_specifier_list; return __ast; } @@ -159,15 +272,17 @@ public: return __ast; } - CompoundStatementAST *CompoundStatement() + CompoundStatementAST *CompoundStatement(StatementListAST *statement_list = 0) { CompoundStatementAST *__ast = new (&pool) CompoundStatementAST; + __ast->statement_list = statement_list; return __ast; } - ConditionAST *Condition(DeclaratorAST *declarator = 0) + ConditionAST *Condition(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0) { ConditionAST *__ast = new (&pool) ConditionAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; return __ast; } @@ -189,9 +304,10 @@ public: return __ast; } - CtorInitializerAST *CtorInitializer() + CtorInitializerAST *CtorInitializer(MemInitializerListAST *member_initializer_list = 0) { CtorInitializerAST *__ast = new (&pool) CtorInitializerAST; + __ast->member_initializer_list = member_initializer_list; return __ast; } @@ -216,11 +332,13 @@ public: return __ast; } - FunctionDeclaratorAST *FunctionDeclarator(ParameterDeclarationClauseAST *parameters = 0, ExceptionSpecificationAST *exception_specification = 0, ExpressionAST *as_cpp_initializer = 0) + FunctionDeclaratorAST *FunctionDeclarator(ParameterDeclarationClauseAST *parameter_declaration_clause = 0, SpecifierListAST *cv_qualifier_list = 0, ExceptionSpecificationAST *exception_specification = 0, TrailingReturnTypeAST *trailing_return_type = 0, ExpressionAST *as_cpp_initializer = 0) { FunctionDeclaratorAST *__ast = new (&pool) FunctionDeclaratorAST; - __ast->parameter_declaration_clause = parameters; + __ast->parameter_declaration_clause = parameter_declaration_clause; + __ast->cv_qualifier_list = cv_qualifier_list; __ast->exception_specification = exception_specification; + __ast->trailing_return_type = trailing_return_type; __ast->as_cpp_initializer = as_cpp_initializer; return __ast; } @@ -254,17 +372,19 @@ public: return __ast; } - ElaboratedTypeSpecifierAST *ElaboratedTypeSpecifier(NameAST *name = 0) + ElaboratedTypeSpecifierAST *ElaboratedTypeSpecifier(SpecifierListAST *attribute_list = 0, NameAST *name = 0) { ElaboratedTypeSpecifierAST *__ast = new (&pool) ElaboratedTypeSpecifierAST; + __ast->attribute_list = attribute_list; __ast->name = name; return __ast; } - EnumSpecifierAST *EnumSpecifier(NameAST *name = 0) + EnumSpecifierAST *EnumSpecifier(NameAST *name = 0, EnumeratorListAST *enumerator_list = 0) { EnumSpecifierAST *__ast = new (&pool) EnumSpecifierAST; __ast->name = name; + __ast->enumerator_list = enumerator_list; return __ast; } @@ -275,16 +395,18 @@ public: return __ast; } - ExceptionDeclarationAST *ExceptionDeclaration(DeclaratorAST *declarator = 0) + ExceptionDeclarationAST *ExceptionDeclaration(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0) { ExceptionDeclarationAST *__ast = new (&pool) ExceptionDeclarationAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; return __ast; } - ExceptionSpecificationAST *ExceptionSpecification() + ExceptionSpecificationAST *ExceptionSpecification(ExpressionListAST *type_id_list = 0) { ExceptionSpecificationAST *__ast = new (&pool) ExceptionSpecificationAST; + __ast->type_id_list = type_id_list; return __ast; } @@ -303,18 +425,20 @@ public: return __ast; } - FunctionDefinitionAST *FunctionDefinition(DeclaratorAST *declarator = 0, CtorInitializerAST *ctor_initializer = 0, StatementAST *function_body = 0) + FunctionDefinitionAST *FunctionDefinition(SpecifierListAST *decl_specifier_list = 0, DeclaratorAST *declarator = 0, CtorInitializerAST *ctor_initializer = 0, StatementAST *function_body = 0) { FunctionDefinitionAST *__ast = new (&pool) FunctionDefinitionAST; + __ast->decl_specifier_list = decl_specifier_list; __ast->declarator = declarator; __ast->ctor_initializer = ctor_initializer; __ast->function_body = function_body; return __ast; } - ForeachStatementAST *ForeachStatement(DeclaratorAST *declarator = 0, ExpressionAST *initializer = 0, ExpressionAST *expression = 0, StatementAST *statement = 0) + ForeachStatementAST *ForeachStatement(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0, ExpressionAST *initializer = 0, ExpressionAST *expression = 0, StatementAST *statement = 0) { ForeachStatementAST *__ast = new (&pool) ForeachStatementAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; __ast->initializer = initializer; __ast->expression = expression; @@ -341,9 +465,10 @@ public: return __ast; } - ArrayInitializerAST *ArrayInitializer() + ArrayInitializerAST *ArrayInitializer(ExpressionListAST *expression_list = 0) { ArrayInitializerAST *__ast = new (&pool) ArrayInitializerAST; + __ast->expression_list = expression_list; return __ast; } @@ -354,9 +479,10 @@ public: return __ast; } - LinkageBodyAST *LinkageBody() + LinkageBodyAST *LinkageBody(DeclarationListAST *declaration_list = 0) { LinkageBodyAST *__ast = new (&pool) LinkageBodyAST; + __ast->declaration_list = declaration_list; return __ast; } @@ -367,10 +493,11 @@ public: return __ast; } - MemInitializerAST *MemInitializer(NameAST *name = 0) + MemInitializerAST *MemInitializer(NameAST *name = 0, ExpressionListAST *expression_list = 0) { MemInitializerAST *__ast = new (&pool) MemInitializerAST; __ast->name = name; + __ast->expression_list = expression_list; return __ast; } @@ -381,9 +508,10 @@ public: return __ast; } - QualifiedNameAST *QualifiedName(NameAST *unqualified_name = 0) + QualifiedNameAST *QualifiedName(NestedNameSpecifierListAST *nested_name_specifier_list = 0, NameAST *unqualified_name = 0) { QualifiedNameAST *__ast = new (&pool) QualifiedNameAST; + __ast->nested_name_specifier_list = nested_name_specifier_list; __ast->unqualified_name = unqualified_name; return __ast; } @@ -395,9 +523,11 @@ public: return __ast; } - ConversionFunctionIdAST *ConversionFunctionId() + ConversionFunctionIdAST *ConversionFunctionId(SpecifierListAST *type_specifier_list = 0, PtrOperatorListAST *ptr_operator_list = 0) { ConversionFunctionIdAST *__ast = new (&pool) ConversionFunctionIdAST; + __ast->type_specifier_list = type_specifier_list; + __ast->ptr_operator_list = ptr_operator_list; return __ast; } @@ -413,15 +543,17 @@ public: return __ast; } - TemplateIdAST *TemplateId() + TemplateIdAST *TemplateId(ExpressionListAST *template_argument_list = 0) { TemplateIdAST *__ast = new (&pool) TemplateIdAST; + __ast->template_argument_list = template_argument_list; return __ast; } - NamespaceAST *Namespace(DeclarationAST *linkage_body = 0) + NamespaceAST *Namespace(SpecifierListAST *attribute_list = 0, DeclarationAST *linkage_body = 0) { NamespaceAST *__ast = new (&pool) NamespaceAST; + __ast->attribute_list = attribute_list; __ast->linkage_body = linkage_body; return __ast; } @@ -433,9 +565,10 @@ public: return __ast; } - NewPlacementAST *NewPlacement() + NewPlacementAST *NewPlacement(ExpressionListAST *expression_list = 0) { NewPlacementAST *__ast = new (&pool) NewPlacementAST; + __ast->expression_list = expression_list; return __ast; } @@ -463,9 +596,12 @@ public: return __ast; } - NewTypeIdAST *NewTypeId() + NewTypeIdAST *NewTypeId(SpecifierListAST *type_specifier_list = 0, PtrOperatorListAST *ptr_operator_list = 0, NewArrayDeclaratorListAST *new_array_declarator_list = 0) { NewTypeIdAST *__ast = new (&pool) NewTypeIdAST; + __ast->type_specifier_list = type_specifier_list; + __ast->ptr_operator_list = ptr_operator_list; + __ast->new_array_declarator_list = new_array_declarator_list; return __ast; } @@ -475,42 +611,49 @@ public: return __ast; } - ParameterDeclarationAST *ParameterDeclaration(DeclaratorAST *declarator = 0, ExpressionAST *expression = 0) + ParameterDeclarationAST *ParameterDeclaration(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0, ExpressionAST *expression = 0) { ParameterDeclarationAST *__ast = new (&pool) ParameterDeclarationAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; __ast->expression = expression; return __ast; } - ParameterDeclarationClauseAST *ParameterDeclarationClause() + ParameterDeclarationClauseAST *ParameterDeclarationClause(ParameterDeclarationListAST *parameter_declaration_list = 0) { ParameterDeclarationClauseAST *__ast = new (&pool) ParameterDeclarationClauseAST; + __ast->parameter_declaration_list = parameter_declaration_list; return __ast; } - CallAST *Call() + CallAST *Call(ExpressionAST *base_expression = 0, ExpressionListAST *expression_list = 0) { CallAST *__ast = new (&pool) CallAST; + __ast->base_expression = base_expression; + __ast->expression_list = expression_list; return __ast; } - ArrayAccessAST *ArrayAccess(ExpressionAST *expression = 0) + ArrayAccessAST *ArrayAccess(ExpressionAST *base_expression = 0, ExpressionAST *expression = 0) { ArrayAccessAST *__ast = new (&pool) ArrayAccessAST; + __ast->base_expression = base_expression; __ast->expression = expression; return __ast; } - PostIncrDecrAST *PostIncrDecr() + PostIncrDecrAST *PostIncrDecr(ExpressionAST *base_expression = 0) { PostIncrDecrAST *__ast = new (&pool) PostIncrDecrAST; + __ast->base_expression = base_expression; return __ast; } - MemberAccessAST *MemberAccess(NameAST *member_name = 0) + MemberAccessAST *MemberAccess(ExpressionAST *base_expression = 0, NameAST *member_name = 0) { MemberAccessAST *__ast = new (&pool) MemberAccessAST; + __ast->base_expression = base_expression; __ast->member_name = member_name; return __ast; } @@ -522,28 +665,34 @@ public: return __ast; } - TypenameCallExpressionAST *TypenameCallExpression(NameAST *name = 0) + TypenameCallExpressionAST *TypenameCallExpression(NameAST *name = 0, ExpressionListAST *expression_list = 0) { TypenameCallExpressionAST *__ast = new (&pool) TypenameCallExpressionAST; __ast->name = name; + __ast->expression_list = expression_list; return __ast; } - TypeConstructorCallAST *TypeConstructorCall() + TypeConstructorCallAST *TypeConstructorCall(SpecifierListAST *type_specifier_list = 0, ExpressionListAST *expression_list = 0) { TypeConstructorCallAST *__ast = new (&pool) TypeConstructorCallAST; + __ast->type_specifier_list = type_specifier_list; + __ast->expression_list = expression_list; return __ast; } - PointerToMemberAST *PointerToMember() + PointerToMemberAST *PointerToMember(NestedNameSpecifierListAST *nested_name_specifier_list = 0, SpecifierListAST *cv_qualifier_list = 0) { PointerToMemberAST *__ast = new (&pool) PointerToMemberAST; + __ast->nested_name_specifier_list = nested_name_specifier_list; + __ast->cv_qualifier_list = cv_qualifier_list; return __ast; } - PointerAST *Pointer() + PointerAST *Pointer(SpecifierListAST *cv_qualifier_list = 0) { PointerAST *__ast = new (&pool) PointerAST; + __ast->cv_qualifier_list = cv_qualifier_list; return __ast; } @@ -625,9 +774,10 @@ public: return __ast; } - TemplateDeclarationAST *TemplateDeclaration(DeclarationAST *declaration = 0) + TemplateDeclarationAST *TemplateDeclaration(DeclarationListAST *template_parameter_list = 0, DeclarationAST *declaration = 0) { TemplateDeclarationAST *__ast = new (&pool) TemplateDeclarationAST; + __ast->template_parameter_list = template_parameter_list; __ast->declaration = declaration; return __ast; } @@ -639,16 +789,18 @@ public: return __ast; } - TranslationUnitAST *TranslationUnit() + TranslationUnitAST *TranslationUnit(DeclarationListAST *declaration_list = 0) { TranslationUnitAST *__ast = new (&pool) TranslationUnitAST; + __ast->declaration_list = declaration_list; return __ast; } - TryBlockStatementAST *TryBlockStatement(StatementAST *statement = 0) + TryBlockStatementAST *TryBlockStatement(StatementAST *statement = 0, CatchClauseListAST *catch_clause_list = 0) { TryBlockStatementAST *__ast = new (&pool) TryBlockStatementAST; __ast->statement = statement; + __ast->catch_clause_list = catch_clause_list; return __ast; } @@ -660,9 +812,10 @@ public: return __ast; } - TypeIdAST *TypeId(DeclaratorAST *declarator = 0) + TypeIdAST *TypeId(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0) { TypeIdAST *__ast = new (&pool) TypeIdAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; return __ast; } @@ -675,9 +828,10 @@ public: return __ast; } - TemplateTypeParameterAST *TemplateTypeParameter(NameAST *name = 0, ExpressionAST *type_id = 0) + TemplateTypeParameterAST *TemplateTypeParameter(DeclarationListAST *template_parameter_list = 0, NameAST *name = 0, ExpressionAST *type_id = 0) { TemplateTypeParameterAST *__ast = new (&pool) TemplateTypeParameterAST; + __ast->template_parameter_list = template_parameter_list; __ast->name = name; __ast->type_id = type_id; return __ast; @@ -712,40 +866,49 @@ public: return __ast; } - ObjCClassForwardDeclarationAST *ObjCClassForwardDeclaration() + ObjCClassForwardDeclarationAST *ObjCClassForwardDeclaration(SpecifierListAST *attribute_list = 0, NameListAST *identifier_list = 0) { ObjCClassForwardDeclarationAST *__ast = new (&pool) ObjCClassForwardDeclarationAST; + __ast->attribute_list = attribute_list; + __ast->identifier_list = identifier_list; return __ast; } - ObjCClassDeclarationAST *ObjCClassDeclaration(NameAST *class_name = 0, NameAST *category_name = 0, NameAST *superclass = 0, ObjCProtocolRefsAST *protocol_refs = 0, ObjCInstanceVariablesDeclarationAST *inst_vars_decl = 0) + ObjCClassDeclarationAST *ObjCClassDeclaration(SpecifierListAST *attribute_list = 0, NameAST *class_name = 0, NameAST *category_name = 0, NameAST *superclass = 0, ObjCProtocolRefsAST *protocol_refs = 0, ObjCInstanceVariablesDeclarationAST *inst_vars_decl = 0, DeclarationListAST *member_declaration_list = 0) { ObjCClassDeclarationAST *__ast = new (&pool) ObjCClassDeclarationAST; + __ast->attribute_list = attribute_list; __ast->class_name = class_name; __ast->category_name = category_name; __ast->superclass = superclass; __ast->protocol_refs = protocol_refs; __ast->inst_vars_decl = inst_vars_decl; + __ast->member_declaration_list = member_declaration_list; return __ast; } - ObjCProtocolForwardDeclarationAST *ObjCProtocolForwardDeclaration() + ObjCProtocolForwardDeclarationAST *ObjCProtocolForwardDeclaration(SpecifierListAST *attribute_list = 0, NameListAST *identifier_list = 0) { ObjCProtocolForwardDeclarationAST *__ast = new (&pool) ObjCProtocolForwardDeclarationAST; + __ast->attribute_list = attribute_list; + __ast->identifier_list = identifier_list; return __ast; } - ObjCProtocolDeclarationAST *ObjCProtocolDeclaration(NameAST *name = 0, ObjCProtocolRefsAST *protocol_refs = 0) + ObjCProtocolDeclarationAST *ObjCProtocolDeclaration(SpecifierListAST *attribute_list = 0, NameAST *name = 0, ObjCProtocolRefsAST *protocol_refs = 0, DeclarationListAST *member_declaration_list = 0) { ObjCProtocolDeclarationAST *__ast = new (&pool) ObjCProtocolDeclarationAST; + __ast->attribute_list = attribute_list; __ast->name = name; __ast->protocol_refs = protocol_refs; + __ast->member_declaration_list = member_declaration_list; return __ast; } - ObjCProtocolRefsAST *ObjCProtocolRefs() + ObjCProtocolRefsAST *ObjCProtocolRefs(NameListAST *identifier_list = 0) { ObjCProtocolRefsAST *__ast = new (&pool) ObjCProtocolRefsAST; + __ast->identifier_list = identifier_list; return __ast; } @@ -756,11 +919,12 @@ public: return __ast; } - ObjCMessageExpressionAST *ObjCMessageExpression(ExpressionAST *receiver_expression = 0, ObjCSelectorAST *selector = 0) + ObjCMessageExpressionAST *ObjCMessageExpression(ExpressionAST *receiver_expression = 0, ObjCSelectorAST *selector = 0, ObjCMessageArgumentListAST *argument_list = 0) { ObjCMessageExpressionAST *__ast = new (&pool) ObjCMessageExpressionAST; __ast->receiver_expression = receiver_expression; __ast->selector = selector; + __ast->argument_list = argument_list; return __ast; } @@ -784,12 +948,6 @@ public: return __ast; } - ObjCSelectorArgumentAST *ObjCSelectorArgument() - { - ObjCSelectorArgumentAST *__ast = new (&pool) ObjCSelectorArgumentAST; - return __ast; - } - ObjCSelectorExpressionAST *ObjCSelectorExpression(ObjCSelectorAST *selector = 0) { ObjCSelectorExpressionAST *__ast = new (&pool) ObjCSelectorExpressionAST; @@ -797,9 +955,10 @@ public: return __ast; } - ObjCInstanceVariablesDeclarationAST *ObjCInstanceVariablesDeclaration() + ObjCInstanceVariablesDeclarationAST *ObjCInstanceVariablesDeclaration(DeclarationListAST *instance_variable_list = 0) { ObjCInstanceVariablesDeclarationAST *__ast = new (&pool) ObjCInstanceVariablesDeclarationAST; + __ast->instance_variable_list = instance_variable_list; return __ast; } @@ -816,25 +975,31 @@ public: return __ast; } - ObjCPropertyDeclarationAST *ObjCPropertyDeclaration(DeclarationAST *simple_declaration = 0) + ObjCPropertyDeclarationAST *ObjCPropertyDeclaration(SpecifierListAST *attribute_list = 0, ObjCPropertyAttributeListAST *property_attribute_list = 0, DeclarationAST *simple_declaration = 0) { ObjCPropertyDeclarationAST *__ast = new (&pool) ObjCPropertyDeclarationAST; + __ast->attribute_list = attribute_list; + __ast->property_attribute_list = property_attribute_list; __ast->simple_declaration = simple_declaration; return __ast; } - ObjCMessageArgumentDeclarationAST *ObjCMessageArgumentDeclaration(ObjCTypeNameAST *type_name = 0) + ObjCMessageArgumentDeclarationAST *ObjCMessageArgumentDeclaration(ObjCTypeNameAST *type_name = 0, SpecifierListAST *attribute_list = 0, NameAST *param_name = 0) { ObjCMessageArgumentDeclarationAST *__ast = new (&pool) ObjCMessageArgumentDeclarationAST; __ast->type_name = type_name; + __ast->attribute_list = attribute_list; + __ast->param_name = param_name; return __ast; } - ObjCMethodPrototypeAST *ObjCMethodPrototype(ObjCTypeNameAST *type_name = 0, ObjCSelectorAST *selector = 0) + ObjCMethodPrototypeAST *ObjCMethodPrototype(ObjCTypeNameAST *type_name = 0, ObjCSelectorAST *selector = 0, ObjCMessageArgumentDeclarationListAST *argument_list = 0, SpecifierListAST *attribute_list = 0) { ObjCMethodPrototypeAST *__ast = new (&pool) ObjCMethodPrototypeAST; __ast->type_name = type_name; __ast->selector = selector; + __ast->argument_list = argument_list; + __ast->attribute_list = attribute_list; return __ast; } @@ -852,21 +1017,24 @@ public: return __ast; } - ObjCSynthesizedPropertiesDeclarationAST *ObjCSynthesizedPropertiesDeclaration() + ObjCSynthesizedPropertiesDeclarationAST *ObjCSynthesizedPropertiesDeclaration(ObjCSynthesizedPropertyListAST *property_identifier_list = 0) { ObjCSynthesizedPropertiesDeclarationAST *__ast = new (&pool) ObjCSynthesizedPropertiesDeclarationAST; + __ast->property_identifier_list = property_identifier_list; return __ast; } - ObjCDynamicPropertiesDeclarationAST *ObjCDynamicPropertiesDeclaration() + ObjCDynamicPropertiesDeclarationAST *ObjCDynamicPropertiesDeclaration(NameListAST *property_identifier_list = 0) { ObjCDynamicPropertiesDeclarationAST *__ast = new (&pool) ObjCDynamicPropertiesDeclarationAST; + __ast->property_identifier_list = property_identifier_list; return __ast; } - ObjCFastEnumerationAST *ObjCFastEnumeration(DeclaratorAST *declarator = 0, ExpressionAST *initializer = 0, ExpressionAST *fast_enumeratable_expression = 0, StatementAST *statement = 0) + ObjCFastEnumerationAST *ObjCFastEnumeration(SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0, ExpressionAST *initializer = 0, ExpressionAST *fast_enumeratable_expression = 0, StatementAST *statement = 0) { ObjCFastEnumerationAST *__ast = new (&pool) ObjCFastEnumerationAST; + __ast->type_specifier_list = type_specifier_list; __ast->declarator = declarator; __ast->initializer = initializer; __ast->fast_enumeratable_expression = fast_enumeratable_expression; @@ -882,6 +1050,253 @@ public: return __ast; } + LambdaExpressionAST *LambdaExpression(LambdaIntroducerAST *lambda_introducer = 0, LambdaDeclaratorAST *lambda_declarator = 0, StatementAST *statement = 0) + { + LambdaExpressionAST *__ast = new (&pool) LambdaExpressionAST; + __ast->lambda_introducer = lambda_introducer; + __ast->lambda_declarator = lambda_declarator; + __ast->statement = statement; + return __ast; + } + + LambdaIntroducerAST *LambdaIntroducer(LambdaCaptureAST *lambda_capture = 0) + { + LambdaIntroducerAST *__ast = new (&pool) LambdaIntroducerAST; + __ast->lambda_capture = lambda_capture; + return __ast; + } + + LambdaCaptureAST *LambdaCapture(CaptureListAST *capture_list = 0) + { + LambdaCaptureAST *__ast = new (&pool) LambdaCaptureAST; + __ast->capture_list = capture_list; + return __ast; + } + + CaptureAST *Capture() + { + CaptureAST *__ast = new (&pool) CaptureAST; + return __ast; + } + + LambdaDeclaratorAST *LambdaDeclarator(ParameterDeclarationClauseAST *parameter_declaration_clause = 0, SpecifierListAST *attributes = 0, ExceptionSpecificationAST *exception_specification = 0, TrailingReturnTypeAST *trailing_return_type = 0) + { + LambdaDeclaratorAST *__ast = new (&pool) LambdaDeclaratorAST; + __ast->parameter_declaration_clause = parameter_declaration_clause; + __ast->attributes = attributes; + __ast->exception_specification = exception_specification; + __ast->trailing_return_type = trailing_return_type; + return __ast; + } + + TrailingReturnTypeAST *TrailingReturnType(SpecifierListAST *attributes = 0, SpecifierListAST *type_specifier_list = 0, DeclaratorAST *declarator = 0) + { + TrailingReturnTypeAST *__ast = new (&pool) TrailingReturnTypeAST; + __ast->attributes = attributes; + __ast->type_specifier_list = type_specifier_list; + __ast->declarator = declarator; + return __ast; + } + + BracedInitializerAST *BracedInitializer(ExpressionListAST *expression_list = 0) + { + BracedInitializerAST *__ast = new (&pool) BracedInitializerAST; + __ast->expression_list = expression_list; + return __ast; + } + + CatchClauseListAST *CatchClauseList(CatchClauseAST *value, CatchClauseListAST *next = 0) + { + CatchClauseListAST *__list = new (&pool) CatchClauseListAST; + __list->next = next; + __list->value = value; + return __list; + } + + PostfixDeclaratorListAST *PostfixDeclaratorList(PostfixDeclaratorAST *value, PostfixDeclaratorListAST *next = 0) + { + PostfixDeclaratorListAST *__list = new (&pool) PostfixDeclaratorListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ExpressionListAST *ExpressionList(ExpressionAST *value, ExpressionListAST *next = 0) + { + ExpressionListAST *__list = new (&pool) ExpressionListAST; + __list->next = next; + __list->value = value; + return __list; + } + + QtPropertyDeclarationItemListAST *QtPropertyDeclarationItemList(QtPropertyDeclarationItemAST *value, QtPropertyDeclarationItemListAST *next = 0) + { + QtPropertyDeclarationItemListAST *__list = new (&pool) QtPropertyDeclarationItemListAST; + __list->next = next; + __list->value = value; + return __list; + } + + DeclarationListAST *DeclarationList(DeclarationAST *value, DeclarationListAST *next = 0) + { + DeclarationListAST *__list = new (&pool) DeclarationListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ObjCMessageArgumentDeclarationListAST *ObjCMessageArgumentDeclarationList(ObjCMessageArgumentDeclarationAST *value, ObjCMessageArgumentDeclarationListAST *next = 0) + { + ObjCMessageArgumentDeclarationListAST *__list = new (&pool) ObjCMessageArgumentDeclarationListAST; + __list->next = next; + __list->value = value; + return __list; + } + + EnumeratorListAST *EnumeratorList(EnumeratorAST *value, EnumeratorListAST *next = 0) + { + EnumeratorListAST *__list = new (&pool) EnumeratorListAST; + __list->next = next; + __list->value = value; + return __list; + } + + NameListAST *NameList(NameAST *value, NameListAST *next = 0) + { + NameListAST *__list = new (&pool) NameListAST; + __list->next = next; + __list->value = value; + return __list; + } + + AttributeListAST *AttributeList(AttributeAST *value, AttributeListAST *next = 0) + { + AttributeListAST *__list = new (&pool) AttributeListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ObjCSelectorArgumentListAST *ObjCSelectorArgumentList(ObjCSelectorArgumentAST *value, ObjCSelectorArgumentListAST *next = 0) + { + ObjCSelectorArgumentListAST *__list = new (&pool) ObjCSelectorArgumentListAST; + __list->next = next; + __list->value = value; + return __list; + } + + NestedNameSpecifierListAST *NestedNameSpecifierList(NestedNameSpecifierAST *value, NestedNameSpecifierListAST *next = 0) + { + NestedNameSpecifierListAST *__list = new (&pool) NestedNameSpecifierListAST; + __list->next = next; + __list->value = value; + return __list; + } + + BaseSpecifierListAST *BaseSpecifierList(BaseSpecifierAST *value, BaseSpecifierListAST *next = 0) + { + BaseSpecifierListAST *__list = new (&pool) BaseSpecifierListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ObjCPropertyAttributeListAST *ObjCPropertyAttributeList(ObjCPropertyAttributeAST *value, ObjCPropertyAttributeListAST *next = 0) + { + ObjCPropertyAttributeListAST *__list = new (&pool) ObjCPropertyAttributeListAST; + __list->next = next; + __list->value = value; + return __list; + } + + MemInitializerListAST *MemInitializerList(MemInitializerAST *value, MemInitializerListAST *next = 0) + { + MemInitializerListAST *__list = new (&pool) MemInitializerListAST; + __list->next = next; + __list->value = value; + return __list; + } + + StatementListAST *StatementList(StatementAST *value, StatementListAST *next = 0) + { + StatementListAST *__list = new (&pool) StatementListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ParameterDeclarationListAST *ParameterDeclarationList(ParameterDeclarationAST *value, ParameterDeclarationListAST *next = 0) + { + ParameterDeclarationListAST *__list = new (&pool) ParameterDeclarationListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ObjCMessageArgumentListAST *ObjCMessageArgumentList(ObjCMessageArgumentAST *value, ObjCMessageArgumentListAST *next = 0) + { + ObjCMessageArgumentListAST *__list = new (&pool) ObjCMessageArgumentListAST; + __list->next = next; + __list->value = value; + return __list; + } + + NewArrayDeclaratorListAST *NewArrayDeclaratorList(NewArrayDeclaratorAST *value, NewArrayDeclaratorListAST *next = 0) + { + NewArrayDeclaratorListAST *__list = new (&pool) NewArrayDeclaratorListAST; + __list->next = next; + __list->value = value; + return __list; + } + + SpecifierListAST *SpecifierList(SpecifierAST *value, SpecifierListAST *next = 0) + { + SpecifierListAST *__list = new (&pool) SpecifierListAST; + __list->next = next; + __list->value = value; + return __list; + } + + ObjCSynthesizedPropertyListAST *ObjCSynthesizedPropertyList(ObjCSynthesizedPropertyAST *value, ObjCSynthesizedPropertyListAST *next = 0) + { + ObjCSynthesizedPropertyListAST *__list = new (&pool) ObjCSynthesizedPropertyListAST; + __list->next = next; + __list->value = value; + return __list; + } + + DeclaratorListAST *DeclaratorList(DeclaratorAST *value, DeclaratorListAST *next = 0) + { + DeclaratorListAST *__list = new (&pool) DeclaratorListAST; + __list->next = next; + __list->value = value; + return __list; + } + + QtInterfaceNameListAST *QtInterfaceNameList(QtInterfaceNameAST *value, QtInterfaceNameListAST *next = 0) + { + QtInterfaceNameListAST *__list = new (&pool) QtInterfaceNameListAST; + __list->next = next; + __list->value = value; + return __list; + } + + PtrOperatorListAST *PtrOperatorList(PtrOperatorAST *value, PtrOperatorListAST *next = 0) + { + PtrOperatorListAST *__list = new (&pool) PtrOperatorListAST; + __list->next = next; + __list->value = value; + return __list; + } + + CaptureListAST *CaptureList(CaptureAST *value, CaptureListAST *next = 0) + { + CaptureListAST *__list = new (&pool) CaptureListAST; + __list->next = next; + __list->value = value; + return __list; + } + }; } // end of namespace CPlusPlus |