public interface ICPPASTNewExpression extends ICPPASTExpression, IASTImplicitNameOwner
IASTExpression.ValueCategory
IASTNode.CopyStyle
Modifier and Type | Field and Description |
---|---|
static ASTNodeProperty |
NEW_INITIALIZER |
static ASTNodeProperty |
NEW_PLACEMENT |
static ASTNodeProperty |
NEW_TYPEID_ARRAY_EXPRESSION
Deprecated.
the id-expressions are part of the type-id.
|
static ASTNodeProperty |
TYPE_ID |
EMPTY_EXPRESSION_ARRAY
EMPTY_NODE_ARRAY
IMPLICIT_DESTRUCTOR_NAME
IMPLICIT_NAME
Modifier and Type | Method and Description |
---|---|
void |
addNewTypeIdArrayExpression(IASTExpression expression)
Deprecated.
the id-expressions are part of the type-id
|
ICPPASTNewExpression |
copy()
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTNewExpression |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
IASTInitializer |
getInitializer()
Returns the initializer or
null . |
IASTExpression |
getNewInitializer()
Deprecated.
Replaced by
getInitializer() |
IASTExpression |
getNewPlacement()
Deprecated.
Replaced by
getPlacementArguments() |
IASTExpression[] |
getNewTypeIdArrayExpressions()
Deprecated.
the id-expressions are part of the type-id.
|
IASTInitializerClause[] |
getPlacementArguments()
Returns the additional arguments for the new placement, or
null . |
IASTTypeId |
getTypeId()
Get the type Id.
|
boolean |
isArrayAllocation()
Returns true if this expression is allocating an array.
|
boolean |
isGlobal()
Is this a ::new expression?
|
boolean |
isNewTypeId()
Returns whether the the typeID a new type ID, which is the case when
the type-id is provided without parenthesis.
|
void |
setInitializer(IASTInitializer init)
Not allowed on frozen ast.
|
void |
setIsGlobal(boolean value)
Not allowed on frozen ast.
|
void |
setIsNewTypeId(boolean value)
Not allowed on frozen ast.
|
void |
setNewInitializer(IASTExpression expression)
Deprecated.
Replaced by
setInitializer(IASTInitializer) |
void |
setNewPlacement(IASTExpression expression)
Deprecated.
Replaced by
setPlacementArguments(IASTInitializerClause[]) |
void |
setPlacementArguments(IASTInitializerClause[] expression)
Not allowed on frozen ast.
|
void |
setTypeId(IASTTypeId typeId)
Not allowed on frozen ast.
|
getExpressionType, getValueCategory, isLValue
getEvaluation
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent
getImplicitDestructorNames
getImplicitNames
static final ASTNodeProperty NEW_PLACEMENT
static final ASTNodeProperty TYPE_ID
static final ASTNodeProperty NEW_INITIALIZER
@Deprecated static final ASTNodeProperty NEW_TYPEID_ARRAY_EXPRESSION
boolean isGlobal()
boolean isArrayAllocation()
IASTInitializerClause[] getPlacementArguments()
null
.
A placement argument can be of type ICPPASTInitializerList
.IASTTypeId getTypeId()
boolean isNewTypeId()
IASTInitializer getInitializer()
null
.ICPPASTNewExpression copy()
IASTNode
copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor 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)
.
copy
in interface IASTExpression
copy
in interface IASTInitializerClause
copy
in interface IASTNode
ICPPASTNewExpression copy(IASTNode.CopyStyle style)
IASTNode
copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
copy
in interface IASTExpression
copy
in interface IASTInitializerClause
copy
in interface IASTNode
style
- IASTNode.CopyStyle
create a copy with or without locations. Please see
IASTNode.CopyStyle
for restrictions on copies with Locations.void setIsGlobal(boolean value)
void setPlacementArguments(IASTInitializerClause[] expression)
void setTypeId(IASTTypeId typeId)
void setIsNewTypeId(boolean value)
void setInitializer(IASTInitializer init)
@Deprecated IASTExpression[] getNewTypeIdArrayExpressions()
@Deprecated void addNewTypeIdArrayExpression(IASTExpression expression)
@Deprecated IASTExpression getNewPlacement()
getPlacementArguments()
@Deprecated void setNewPlacement(IASTExpression expression)
setPlacementArguments(IASTInitializerClause[])
@Deprecated IASTExpression getNewInitializer()
getInitializer()
@Deprecated void setNewInitializer(IASTExpression expression)
setInitializer(IASTInitializer)
Copyright (c) IBM Corp. and others 2004, 2020. All Rights Reserved.