Interface ICPPASTNewExpression
- All Superinterfaces:
IASTExpression, IASTImplicitDestructorNameOwner, IASTImplicitNameOwner, IASTInitializerClause, IASTNode, ICPPASTExpression, ICPPASTInitializerClause
This interface represents a new expression.
- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
Nested Class Summary
Nested classes/interfaces inherited from interface IASTExpression
IASTExpression.ValueCategoryNested classes/interfaces inherited from interface IASTNode
IASTNode.CopyStyle -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ASTNodePropertystatic final ASTNodePropertystatic final ASTNodePropertyDeprecated.the id-expressions are part of the type-id.static final ASTNodePropertyFields inherited from interface IASTExpression
EMPTY_EXPRESSION_ARRAYFields inherited from interface IASTImplicitDestructorNameOwner
IMPLICIT_DESTRUCTOR_NAMEFields inherited from interface IASTImplicitNameOwner
IMPLICIT_NAMEFields inherited from interface IASTNode
EMPTY_NODE_ARRAY -
Method Summary
Modifier and TypeMethodDescriptionvoidaddNewTypeIdArrayExpression(IASTExpression expression) Deprecated.the id-expressions are part of the type-idcopy()Returns a mutable copy of the tree rooted at this node.copy(IASTNode.CopyStyle style) Returns a mutable copy of the tree rooted at this node.Returns the initializer ornull.Deprecated.Replaced bygetInitializer()Deprecated.Replaced bygetPlacementArguments()Deprecated.the id-expressions are part of the type-id.Returns the additional arguments for the new placement, ornull.Get the type Id.booleanReturns true if this expression is allocating an array.booleanisGlobal()Is this a ::new expression?booleanReturns whether the the typeID a new type ID, which is the case when the type-id is provided without parenthesis.voidNot allowed on frozen ast.voidsetIsGlobal(boolean value) Not allowed on frozen ast.voidsetIsNewTypeId(boolean value) Not allowed on frozen ast.voidsetNewInitializer(IASTExpression expression) Deprecated.Replaced bysetInitializer(IASTInitializer)voidsetNewPlacement(IASTExpression expression) Deprecated.Replaced bysetPlacementArguments(IASTInitializerClause[])voidsetPlacementArguments(IASTInitializerClause[] expression) Not allowed on frozen ast.voidsetTypeId(IASTTypeId typeId) Not allowed on frozen ast.Methods inherited from interface IASTExpression
getExpressionType, getValueCategory, isLValueMethods inherited from interface IASTImplicitDestructorNameOwner
getImplicitDestructorNamesMethods inherited from interface IASTImplicitNameOwner
getImplicitNamesMethods inherited from interface IASTNode
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParentMethods inherited from interface ICPPASTInitializerClause
getEvaluation
-
Field Details
-
NEW_PLACEMENT
-
TYPE_ID
-
NEW_INITIALIZER
-
NEW_TYPEID_ARRAY_EXPRESSION
Deprecated.the id-expressions are part of the type-id.- Restriction:
- This field is not intended to be referenced by clients.
-
-
Method Details
-
isGlobal
boolean isGlobal()Is this a ::new expression? -
isArrayAllocation
boolean isArrayAllocation()Returns true if this expression is allocating an array.- Since:
- 5.1
-
getPlacementArguments
IASTInitializerClause[] getPlacementArguments()Returns the additional arguments for the new placement, ornull. A placement argument can be of typeICPPASTInitializerList.- Since:
- 5.2
-
getTypeId
IASTTypeId getTypeId()Get the type Id. The type-id includes the optional array modifications. -
isNewTypeId
boolean isNewTypeId()Returns whether the the typeID a new type ID, which is the case when the type-id is provided without parenthesis. -
getInitializer
-
copy
ICPPASTNewExpression copy()Description copied from interface:IASTNodeReturns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.Calling this method is equivalent to
copy(CopyStyle.withoutLocations).- Specified by:
copyin interfaceIASTExpression- Specified by:
copyin interfaceIASTInitializerClause- Specified by:
copyin interfaceIASTNode- Since:
- 5.1
-
copy
Description copied from interface:IASTNodeReturns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.- Specified by:
copyin interfaceIASTExpression- Specified by:
copyin interfaceIASTInitializerClause- Specified by:
copyin interfaceIASTNode- Parameters:
style-IASTNode.CopyStylecreate a copy with or without locations. Please seeIASTNode.CopyStylefor restrictions on copies with Locations.- Since:
- 5.3
-
setIsGlobal
void setIsGlobal(boolean value) Not allowed on frozen ast. -
setPlacementArguments
Not allowed on frozen ast.- Since:
- 5.2
-
setTypeId
Not allowed on frozen ast. -
setIsNewTypeId
void setIsNewTypeId(boolean value) Not allowed on frozen ast. -
setInitializer
-
getNewTypeIdArrayExpressions
Deprecated.the id-expressions are part of the type-id.- Restriction:
- This method is not intended to be referenced by clients.
-
addNewTypeIdArrayExpression
Deprecated.the id-expressions are part of the type-id- Restriction:
- This method is not intended to be referenced by clients.
-
getNewPlacement
Deprecated.Replaced bygetPlacementArguments()- Restriction:
- This method is not intended to be referenced by clients.
-
setNewPlacement
Deprecated.Replaced bysetPlacementArguments(IASTInitializerClause[])- Restriction:
- This method is not intended to be referenced by clients.
-
getNewInitializer
Deprecated.Replaced bygetInitializer()- Restriction:
- This method is not intended to be referenced by clients.
-
setNewInitializer
Deprecated.Replaced bysetInitializer(IASTInitializer)- Restriction:
- This method is not intended to be referenced by clients.
-