Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTNewExpression
-
- All Superinterfaces:
IASTExpression,IASTImplicitDestructorNameOwner,IASTImplicitNameOwner,IASTInitializerClause,IASTNode,ICPPASTExpression,ICPPASTInitializerClause
public interface ICPPASTNewExpression extends ICPPASTExpression, IASTImplicitNameOwner
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 org.eclipse.cdt.core.dom.ast.IASTExpression
IASTExpression.ValueCategory
-
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle
-
-
Field Summary
Fields Modifier and Type Field Description static ASTNodePropertyNEW_INITIALIZERstatic ASTNodePropertyNEW_PLACEMENTstatic ASTNodePropertyNEW_TYPEID_ARRAY_EXPRESSIONDeprecated.the id-expressions are part of the type-id.static ASTNodePropertyTYPE_ID-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTExpression
EMPTY_EXPRESSION_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitDestructorNameOwner
IMPLICIT_DESTRUCTOR_NAME
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner
IMPLICIT_NAME
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description voidaddNewTypeIdArrayExpression(IASTExpression expression)Deprecated.the id-expressions are part of the type-idICPPASTNewExpressioncopy()Returns a mutable copy of the tree rooted at this node.ICPPASTNewExpressioncopy(IASTNode.CopyStyle style)Returns a mutable copy of the tree rooted at this node.IASTInitializergetInitializer()Returns the initializer ornull.IASTExpressiongetNewInitializer()Deprecated.Replaced bygetInitializer()IASTExpressiongetNewPlacement()Deprecated.Replaced bygetPlacementArguments()IASTExpression[]getNewTypeIdArrayExpressions()Deprecated.the id-expressions are part of the type-id.IASTInitializerClause[]getPlacementArguments()Returns the additional arguments for the new placement, ornull.IASTTypeIdgetTypeId()Get the type Id.booleanisArrayAllocation()Returns true if this expression is allocating an array.booleanisGlobal()Is this a ::new expression?booleanisNewTypeId()Returns whether the the typeID a new type ID, which is the case when the type-id is provided without parenthesis.voidsetInitializer(IASTInitializer init)Not 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 org.eclipse.cdt.core.dom.ast.IASTExpression
getExpressionType, getValueCategory, isLValue
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitDestructorNameOwner
getImplicitDestructorNames
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner
getImplicitNames
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPASTInitializerClause
getEvaluation
-
-
-
-
Field Detail
-
NEW_PLACEMENT
static final ASTNodeProperty NEW_PLACEMENT
-
TYPE_ID
static final ASTNodeProperty TYPE_ID
-
NEW_INITIALIZER
static final ASTNodeProperty NEW_INITIALIZER
-
NEW_TYPEID_ARRAY_EXPRESSION
@Deprecated static final ASTNodeProperty 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 Detail
-
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
IASTInitializer getInitializer()
Returns the initializer ornull.- Since:
- 5.2
-
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
ICPPASTNewExpression copy(IASTNode.CopyStyle style)
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
void setPlacementArguments(IASTInitializerClause[] expression)
Not allowed on frozen ast.- Since:
- 5.2
-
setTypeId
void setTypeId(IASTTypeId typeId)
Not allowed on frozen ast.
-
setIsNewTypeId
void setIsNewTypeId(boolean value)
Not allowed on frozen ast.
-
setInitializer
void setInitializer(IASTInitializer init)
Not allowed on frozen ast.- Since:
- 5.2
-
getNewTypeIdArrayExpressions
@Deprecated IASTExpression[] getNewTypeIdArrayExpressions()
Deprecated.the id-expressions are part of the type-id.- Restriction:
- This method is not intended to be referenced by clients.
-
addNewTypeIdArrayExpression
@Deprecated void addNewTypeIdArrayExpression(IASTExpression expression)
Deprecated.the id-expressions are part of the type-id- Restriction:
- This method is not intended to be referenced by clients.
-
getNewPlacement
@Deprecated IASTExpression getNewPlacement()
Deprecated.Replaced bygetPlacementArguments()- Restriction:
- This method is not intended to be referenced by clients.
-
setNewPlacement
@Deprecated void setNewPlacement(IASTExpression expression)
Deprecated.Replaced bysetPlacementArguments(IASTInitializerClause[])- Restriction:
- This method is not intended to be referenced by clients.
-
getNewInitializer
@Deprecated IASTExpression getNewInitializer()
Deprecated.Replaced bygetInitializer()- Restriction:
- This method is not intended to be referenced by clients.
-
setNewInitializer
@Deprecated void setNewInitializer(IASTExpression expression)
Deprecated.Replaced bysetInitializer(IASTInitializer)- Restriction:
- This method is not intended to be referenced by clients.
-
-