Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPNodeFactory
- All Superinterfaces:
INodeFactory
Factory for AST nodes for the C++ programming language.
- Since:
- 5.1
- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
Method Summary
Modifier and TypeMethodDescriptionnewAliasDeclaration
(IASTName aliasName, ICPPASTTypeId aliasedType) newArrayDeclarator
(IASTName name) newArrayRangeDesignatorGPP
(ICPPASTExpression floor, ICPPASTExpression ceiling) newArraySubscriptExpression
(IASTExpression arrayExpr, IASTExpression subscript) newArraySubscriptExpression
(IASTExpression arrayExpr, IASTInitializerClause subscript) newAttribute
(char[] name, char[] scope, IASTToken argumentClause, boolean packExpansion) Deprecated.Use newAttributeList() instead.newBaseSpecifier
(ICPPASTNameSpecifier nameSpecifier, int visibility, boolean isVirtual) newBaseSpecifier
(IASTName name, int visibility, boolean isVirtual) Deprecated.newBinaryExpression
(int op, IASTExpression expr1, IASTExpression expr2) newBinaryExpression
(int op, IASTExpression expr1, IASTInitializerClause expr2) newBinaryTypeIdExpression
(IASTBinaryTypeIdExpression.Operator op, IASTTypeId type1, IASTTypeId type2) newCastExpression
(int operator, IASTTypeId typeId, IASTExpression operand) newCatchHandler
(IASTDeclaration decl, IASTStatement body) newCompositeTypeSpecifier
(int key, IASTName name) newConstructorChainInitializer
(IASTName memberInitializerId, IASTExpression initializerValue) Deprecated.newConstructorChainInitializer
(IASTName id, IASTInitializer initializer) Deprecated.Replaced bynewConstructorInitializer(IASTInitializerClause[])
.newConversionName
(IASTTypeId typeId) newDeclarator
(IASTName name) newDecltypeSpecifier
(ICPPASTExpression decltypeExpression) newDeleteExpression
(IASTExpression operand) newDesignatedInitializer
(ICPPASTInitializerClause initializer) newElaboratedTypeSpecifier
(int kind, IASTName name) newEnumerationSpecifier
(boolean isScoped, IASTName name, ICPPASTDeclSpecifier baseType) Deprecated.UsenewEnumerationSpecifier(ScopeToken, IASTName, ICPPASTDeclSpecifier)
instead.newEnumerationSpecifier
(ICPPASTEnumerationSpecifier.ScopeStyle scopeStyle, IASTName name, ICPPASTDeclSpecifier baseType) newExplicitTemplateInstantiation
(IASTDeclaration declaration) newFieldDeclarator
(IASTName name, IASTExpression bitFieldSize) newFieldDesignator
(IASTName name) newFieldReference
(IASTName name, IASTExpression owner) newFoldExpression
(int opToken, boolean isComma, IASTExpression lhs, IASTExpression rhs) newForStatement
(IASTStatement init, IASTDeclaration condition, IASTExpression iterationExpression, IASTStatement body) newForStatement
(IASTStatement init, IASTExpression condition, IASTExpression iterationExpression, IASTStatement body) newFunctionCallExpression
(IASTExpression idExpr, IASTExpression argList) Deprecated.newFunctionCallExpression
(IASTExpression idExpr, IASTInitializerClause[] arguments) newFunctionDefinition
(IASTDeclSpecifier declSpecifier, IASTFunctionDeclarator declarator, IASTStatement bodyStatement) newFunctionTryBlock
(IASTDeclSpecifier declSpecifier, IASTFunctionDeclarator declarator, IASTStatement bodyStatement) newIfStatement
(IASTDeclaration condition, IASTStatement then, IASTStatement elseClause) newIfStatement
(IASTExpression condition, IASTStatement then, IASTStatement elseClause) newInitCapture
(ICPPASTDeclarator declarator) newLinkageSpecification
(String literal) newLiteralExpression
(int kind, String rep) newLiteralExpression
(int kind, String rep, boolean useChar8Type) newLiteralExpression
(int kind, String rep, char[] numericCompilerSuffixes) newName()
Creates a "dummy" name using an empty char array.newName
(char[] name) newNamespaceAlias
(IASTName alias, IASTName qualifiedName) newNaryTypeIdExpression
(ICPPASTNaryTypeIdExpression.Operator operator, ICPPASTTypeId[] operands) newNewExpression
(IASTExpression placement, IASTExpression initializer, IASTTypeId typeId) Deprecated.newNewExpression
(IASTInitializerClause[] placement, IASTInitializer initializer, IASTTypeId typeId) newOperatorName
(char[] name) newPackExpansionExpression
(IASTExpression pattern) Creates a new pack expansion expression for the given pattern.newParameterDeclaration
(IASTDeclSpecifier declSpec, IASTDeclarator declarator) newPointerToMember
(IASTName name) newProblemTypeId
(IASTProblem problem) Deprecated.Replaced bynewQualifiedName(ICPPASTName)
.newQualifiedName
(String[] nameQualifiers, String name) Creates anICPPASTQualifiedName
and adds name qualifiers for the elements ofnameQualifiers
.newQualifiedName
(ICPPASTName name) Creates aICPPASTQualifiedName
.Creates a range based for statement.Deprecated.Replaced bynewReferenceOperator(boolean)
.newReferenceOperator
(boolean isRValueReference) Creates an lvalue or rvalue reference operator.newReturnStatement
(IASTInitializerClause retValue) newSimpleTypeConstructorExpression
(ICPPASTDeclSpecifier declSpec, IASTInitializer initializer) newSimpleTypeTemplateParameter
(int type, IASTName name, IASTTypeId typeId) newStaticAssertion
(IASTExpression condition) newStaticAssertion
(IASTExpression condition, ICPPASTLiteralExpression message) Creates a new static assertion declaration with the given condition and message.newStructuredBindingDeclaration
(ICPPASTSimpleDeclSpecifier declSpecifier, ICPPASTFunctionDeclarator.RefQualifier refQualifier, IASTName[] names, IASTInitializer initializer) newSwitchStatement
(IASTDeclaration controller, IASTStatement body) newSwitchStatement
(IASTExpression controlloer, IASTStatement body) newTemplateDeclaration
(IASTDeclaration declaration) newTemplatedTypeTemplateParameter
(int type, IASTName name, IASTExpression defaultValue) newTemplatedTypeTemplateParameter
(IASTName name, IASTExpression defaultValue) newTemplateId
(IASTName templateName) newTemplateName
(char[] templateName) newTemplateSpecialization
(IASTDeclaration declaration) newTranslationUnit
(IScanner scanner) Creates a new translation unit that cooperates with the given scanner in order to track macro-expansions and location information.newTypeId
(IASTDeclSpecifier declSpecifier, IASTDeclarator declarator) newTypeIdExpression
(int operator, IASTTypeId typeId) newTypenameExpression
(IASTName qualifiedName, IASTExpression expr, boolean isTemplate) Deprecated.newUnaryExpression
(int operator, IASTExpression operand) newUsingDeclaration
(IASTName name) newUsingDirective
(IASTName name) newVisibilityLabel
(int visibility) newWhileStatement
(IASTDeclaration condition, IASTStatement body) newWhileStatement
(IASTExpression condition, IASTStatement body) Methods inherited from interface org.eclipse.cdt.core.dom.ast.INodeFactory
newAlignmentSpecifier, newAlignmentSpecifier, newArrayModifier, newASMDeclaration, newAttribute, newBreakStatement, newCaseStatement, newCompoundStatement, newConditionalExpession, newContinueStatement, newDeclarationStatement, newDefaultStatement, newDoStatement, newEnumerationSpecifier, newEnumerator, newEqualsInitializer, newExpressionStatement, newGCCAttributeList, newGCCAttributeSpecifier, newGNUCompoundStatementExpression, newGotoStatement, newGotoStatement, newIdExpression, newInactiveCompletionName, newInitializerExpression, newLabelStatement, newMSDeclspecList, newNullStatement, newPointer, newProblem, newProblemDeclaration, newProblemExpression, newProblemStatement, newReturnStatement, newSimpleDeclaration, newToken, newTokenList, newTypeIdInitializerExpression, setEndOffset, setEndOffset, setOffsets
-
Method Details
-
newAliasDeclaration
- Since:
- 5.5
-
newArrayDeclarator
- Specified by:
newArrayDeclarator
in interfaceINodeFactory
- Since:
- 5.2
-
newArrayDesignator
- Since:
- 6.0
-
newArrayRangeDesignatorGPP
IGPPASTArrayRangeDesignator newArrayRangeDesignatorGPP(ICPPASTExpression floor, ICPPASTExpression ceiling) - Since:
- 6.0
-
newArraySubscriptExpression
ICPPASTArraySubscriptExpression newArraySubscriptExpression(IASTExpression arrayExpr, IASTExpression subscript) - Specified by:
newArraySubscriptExpression
in interfaceINodeFactory
-
newArraySubscriptExpression
ICPPASTArraySubscriptExpression newArraySubscriptExpression(IASTExpression arrayExpr, IASTInitializerClause subscript) - Since:
- 5.2
-
newAttribute
ICPPASTAttribute newAttribute(char[] name, char[] scope, IASTToken argumentClause, boolean packExpansion) - Since:
- 5.7
-
newAttributeList
ICPPASTAttributeList newAttributeList()- Since:
- 6.0
-
newBaseSpecifier
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier newBaseSpecifier(ICPPASTNameSpecifier nameSpecifier, int visibility, boolean isVirtual) - Since:
- 5.8
-
newBinaryExpression
- Specified by:
newBinaryExpression
in interfaceINodeFactory
-
newBinaryExpression
ICPPASTBinaryExpression newBinaryExpression(int op, IASTExpression expr1, IASTInitializerClause expr2) - Since:
- 5.2
-
newBinaryTypeIdExpression
IASTExpression newBinaryTypeIdExpression(IASTBinaryTypeIdExpression.Operator op, IASTTypeId type1, IASTTypeId type2) - Since:
- 5.3
-
newCapture
ICPPASTCapture newCapture()- Since:
- 5.3
-
newInitCapture
- Since:
- 6.5
-
newCastExpression
- Specified by:
newCastExpression
in interfaceINodeFactory
-
newCatchHandler
-
newClassVirtSpecifier
- Since:
- 5.7
-
newCompositeTypeSpecifier
- Specified by:
newCompositeTypeSpecifier
in interfaceINodeFactory
-
newConstructorChainInitializer
ICPPASTConstructorChainInitializer newConstructorChainInitializer(IASTName id, IASTInitializer initializer) - Since:
- 5.2
-
newConstructorInitializer
- Since:
- 5.2
-
newConversionName
-
newDeclarator
- Specified by:
newDeclarator
in interfaceINodeFactory
- Since:
- 5.2
-
newDecltypeSpecifier
- Since:
- 5.6
-
newDeleteExpression
-
newDesignatedInitializer
- Since:
- 6.0
-
newElaboratedTypeSpecifier
- Specified by:
newElaboratedTypeSpecifier
in interfaceINodeFactory
-
newEnumerationSpecifier
@Deprecated ICPPASTEnumerationSpecifier newEnumerationSpecifier(boolean isScoped, IASTName name, ICPPASTDeclSpecifier baseType) Deprecated.UsenewEnumerationSpecifier(ScopeToken, IASTName, ICPPASTDeclSpecifier)
instead. IfisScoped == true
is passedScopeToken.CLASS
is assumed.- Since:
- 5.2
-
newEnumerationSpecifier
ICPPASTEnumerationSpecifier newEnumerationSpecifier(ICPPASTEnumerationSpecifier.ScopeStyle scopeStyle, IASTName name, ICPPASTDeclSpecifier baseType) - Since:
- 6.6
-
newExplicitTemplateInstantiation
-
newExpressionList
ICPPASTExpressionList newExpressionList()- Specified by:
newExpressionList
in interfaceINodeFactory
-
newFieldDeclarator
- Specified by:
newFieldDeclarator
in interfaceINodeFactory
- Since:
- 5.2
-
newFieldDesignator
- Since:
- 6.0
-
newFieldReference
- Specified by:
newFieldReference
in interfaceINodeFactory
-
newForStatement
ICPPASTForStatement newForStatement() -
newForStatement
ICPPASTForStatement newForStatement(IASTStatement init, IASTDeclaration condition, IASTExpression iterationExpression, IASTStatement body) -
newForStatement
ICPPASTForStatement newForStatement(IASTStatement init, IASTExpression condition, IASTExpression iterationExpression, IASTStatement body) - Specified by:
newForStatement
in interfaceINodeFactory
-
newFunctionCallExpression
ICPPASTFunctionCallExpression newFunctionCallExpression(IASTExpression idExpr, IASTInitializerClause[] arguments) - Specified by:
newFunctionCallExpression
in interfaceINodeFactory
- Since:
- 5.2
-
newFunctionDeclarator
- Specified by:
newFunctionDeclarator
in interfaceINodeFactory
-
newFunctionDefinition
ICPPASTFunctionDefinition newFunctionDefinition(IASTDeclSpecifier declSpecifier, IASTFunctionDeclarator declarator, IASTStatement bodyStatement) - Specified by:
newFunctionDefinition
in interfaceINodeFactory
-
newFunctionTryBlock
ICPPASTFunctionWithTryBlock newFunctionTryBlock(IASTDeclSpecifier declSpecifier, IASTFunctionDeclarator declarator, IASTStatement bodyStatement) -
newIfStatement
ICPPASTIfStatement newIfStatement() -
newIfStatement
ICPPASTIfStatement newIfStatement(IASTDeclaration condition, IASTStatement then, IASTStatement elseClause) -
newIfStatement
ICPPASTIfStatement newIfStatement(IASTExpression condition, IASTStatement then, IASTStatement elseClause) - Specified by:
newIfStatement
in interfaceINodeFactory
-
newInitializerList
ICPPASTInitializerList newInitializerList()- Specified by:
newInitializerList
in interfaceINodeFactory
- Since:
- 5.2
-
newLambdaExpression
ICPPASTLambdaExpression newLambdaExpression()- Since:
- 5.3
-
newFoldExpressionToken
IASTExpression newFoldExpressionToken()- Since:
- 8.1
-
newFoldExpression
ICPPASTFoldExpression newFoldExpression(int opToken, boolean isComma, IASTExpression lhs, IASTExpression rhs) - Since:
- 8.1
-
newDeductionGuide
ICPPASTDeductionGuide newDeductionGuide()- Since:
- 8.2
-
newLinkageSpecification
-
newLiteralExpression
- Specified by:
newLiteralExpression
in interfaceINodeFactory
-
newLiteralExpression
- Since:
- 8.2
-
newLiteralExpression
- Since:
- 6.5
-
newNamespaceAlias
-
newNamespaceDefinition
-
newNaryTypeIdExpression
ICPPASTNaryTypeIdExpression newNaryTypeIdExpression(ICPPASTNaryTypeIdExpression.Operator operator, ICPPASTTypeId[] operands) - Since:
- 6.0
-
newNewExpression
ICPPASTNewExpression newNewExpression(IASTInitializerClause[] placement, IASTInitializer initializer, IASTTypeId typeId) - Since:
- 5.2
-
newOperatorName
-
newPackExpansionExpression
Creates a new pack expansion expression for the given pattern.- Since:
- 5.2
-
newParameterDeclaration
ICPPASTParameterDeclaration newParameterDeclaration(IASTDeclSpecifier declSpec, IASTDeclarator declarator) - Specified by:
newParameterDeclaration
in interfaceINodeFactory
-
newPointerToMember
-
newProblemTypeId
-
newQualifiedName
Creates aICPPASTQualifiedName
.- Since:
- 5.7
-
newQualifiedName
Creates anICPPASTQualifiedName
and adds name qualifiers for the elements ofnameQualifiers
.nameQualifiers
cannot contain decltype specifiers for creation ofICPPASTDecltypeSpecifier
.- Since:
- 5.11
-
newName
ICPPASTName newName()Description copied from interface:INodeFactory
Creates a "dummy" name using an empty char array.- Specified by:
newName
in interfaceINodeFactory
- Since:
- 5.9
-
newName
- Specified by:
newName
in interfaceINodeFactory
- Since:
- 5.9
-
newName
- Specified by:
newName
in interfaceINodeFactory
- Since:
- 6.1
-
newTemplateName
- Since:
- 6.6
-
newNamedTypeSpecifier
- Since:
- 5.11
-
newRangeBasedForStatement
ICPPASTRangeBasedForStatement newRangeBasedForStatement()Creates a range based for statement.- Since:
- 5.3
-
newReferenceOperator
Creates an lvalue or rvalue reference operator.- Since:
- 5.2
-
newReturnStatement
- Since:
- 5.2
-
newSimpleDeclSpecifier
ICPPASTSimpleDeclSpecifier newSimpleDeclSpecifier()- Specified by:
newSimpleDeclSpecifier
in interfaceINodeFactory
-
newSimpleTypeConstructorExpression
ICPPASTSimpleTypeConstructorExpression newSimpleTypeConstructorExpression(ICPPASTDeclSpecifier declSpec, IASTInitializer initializer) - Since:
- 5.2
-
newSimpleTypeTemplateParameter
ICPPASTSimpleTypeTemplateParameter newSimpleTypeTemplateParameter(int type, IASTName name, IASTTypeId typeId) -
newStaticAssertion
ICPPASTStaticAssertDeclaration newStaticAssertion(IASTExpression condition, ICPPASTLiteralExpression message) Creates a new static assertion declaration with the given condition and message.- Since:
- 5.2
-
newStaticAssertion
- Since:
- 6.5
-
newSwitchStatement
ICPPASTSwitchStatement newSwitchStatement() -
newSwitchStatement
-
newSwitchStatement
- Specified by:
newSwitchStatement
in interfaceINodeFactory
-
newTemplateDeclaration
-
newTemplatedTypeTemplateParameter
ICPPASTTemplatedTypeTemplateParameter newTemplatedTypeTemplateParameter(IASTName name, IASTExpression defaultValue) -
newTemplatedTypeTemplateParameter
ICPPASTTemplatedTypeTemplateParameter newTemplatedTypeTemplateParameter(int type, IASTName name, IASTExpression defaultValue) - Since:
- 6.6
-
newTemplateId
-
newTemplateSpecialization
-
newTranslationUnit
Creates a new translation unit that cooperates with the given scanner in order to track macro-expansions and location information.- Specified by:
newTranslationUnit
in interfaceINodeFactory
- Parameters:
scanner
- the preprocessor the translation unit interacts with.- Since:
- 5.2
-
newTryBlockStatement
-
newTypedefNameSpecifier
- Specified by:
newTypedefNameSpecifier
in interfaceINodeFactory
-
newTypeId
- Specified by:
newTypeId
in interfaceINodeFactory
- Since:
- 5.2
-
newTypeIdExpression
- Specified by:
newTypeIdExpression
in interfaceINodeFactory
-
newTypeTransformationSpecifier
ICPPASTTypeTransformationSpecifier newTypeTransformationSpecifier(ICPPUnaryTypeTransformation.Operator kind, ICPPASTTypeId typeId) - Since:
- 5.6
-
newUnaryExpression
- Specified by:
newUnaryExpression
in interfaceINodeFactory
-
newUsingDeclaration
-
newUsingDirective
-
newVirtSpecifier
- Since:
- 5.7
-
newVisibilityLabel
-
newWhileStatement
ICPPASTWhileStatement newWhileStatement() -
newWhileStatement
-
newWhileStatement
- Specified by:
newWhileStatement
in interfaceINodeFactory
-
newConstructorChainInitializer
@Deprecated ICPPASTConstructorChainInitializer newConstructorChainInitializer(IASTName memberInitializerId, IASTExpression initializerValue) Deprecated.- Restriction:
- This method is not intended to be referenced by clients.
-
newConstructorInitializer
Deprecated.Replaced bynewConstructorInitializer(IASTInitializerClause[])
.- Restriction:
- This method is not intended to be referenced by clients.
-
newBaseSpecifier
@Deprecated ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier newBaseSpecifier(IASTName name, int visibility, boolean isVirtual) Deprecated.- Restriction:
- This method is not intended to be referenced by clients.
-
newFunctionCallExpression
@Deprecated ICPPASTFunctionCallExpression newFunctionCallExpression(IASTExpression idExpr, IASTExpression argList) Deprecated.- Specified by:
newFunctionCallExpression
in interfaceINodeFactory
- Restriction:
- This method is not intended to be referenced by clients.
-
newNewExpression
@Deprecated ICPPASTNewExpression newNewExpression(IASTExpression placement, IASTExpression initializer, IASTTypeId typeId) Deprecated.- Restriction:
- This method is not intended to be referenced by clients.
-
newQualifiedName
Deprecated.Replaced bynewQualifiedName(ICPPASTName)
.- Restriction:
- This method is not intended to be referenced by clients.
-
newReferenceOperator
Deprecated.Replaced bynewReferenceOperator(boolean)
.- Restriction:
- This method is not intended to be referenced by clients.
-
newTypenameExpression
@Deprecated ICPPASTTypenameExpression newTypenameExpression(IASTName qualifiedName, IASTExpression expr, boolean isTemplate) Deprecated.- Restriction:
- This method is not intended to be referenced by clients.
-
newAttributeSpecifier
Deprecated.Use newAttributeList() instead.- Since:
- 5.7
- Restriction:
- This method is not intended to be referenced by clients.
-
newStructuredBindingDeclaration
ICPPASTStructuredBindingDeclaration newStructuredBindingDeclaration()- Since:
- 6.9
-
newStructuredBindingDeclaration
ICPPASTStructuredBindingDeclaration newStructuredBindingDeclaration(ICPPASTSimpleDeclSpecifier declSpecifier, ICPPASTFunctionDeclarator.RefQualifier refQualifier, IASTName[] names, IASTInitializer initializer) - Since:
- 6.9
-