Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTDesignatedInitializer
-
- All Superinterfaces:
IASTInitializer,IASTInitializerClause,IASTNode,ICPPASTInitializerClause
public interface ICPPASTDesignatedInitializer extends IASTInitializer, ICPPASTInitializerClause
This interface represents a designated initializer, e.g. in struct A y = { .z = 4, .t[1] = 3 };- Since:
- 6.0
- 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.IASTNode
IASTNode.CopyStyle
-
-
Field Summary
Fields Modifier and Type Field Description static ASTNodePropertyDESIGNATORThe part of the initializer before the equal sign.static ASTNodePropertyOPERANDThe part of the initializer after the equal sign.-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTInitializer
EMPTY_INITIALIZER_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddDesignator(ICPPASTDesignator designator)Adds a designator to this initializer.ICPPASTDesignatedInitializercopy()Returns a mutable copy of the tree rooted at this node.ICPPASTDesignatedInitializercopy(IASTNode.CopyStyle style)Returns a mutable copy of the tree rooted at this node.ICPPASTDesignator[]getDesignators()Returns all of the designators.ICPPASTInitializerClausegetOperand()Returns the operand of the initializer.voidsetOperand(ICPPASTInitializerClause operand)Sets the initializer clause.-
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
-
DESIGNATOR
static final ASTNodeProperty DESIGNATOR
The part of the initializer before the equal sign.
-
OPERAND
static final ASTNodeProperty OPERAND
The part of the initializer after the equal sign.
-
-
Method Detail
-
addDesignator
void addDesignator(ICPPASTDesignator designator)
Adds a designator to this initializer.
-
getDesignators
ICPPASTDesignator[] getDesignators()
Returns all of the designators.
-
getOperand
ICPPASTInitializerClause getOperand()
Returns the operand of the initializer.
-
setOperand
void setOperand(ICPPASTInitializerClause operand)
Sets the initializer clause. Not allowed on a frozen AST.
-
copy
ICPPASTDesignatedInitializer 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 interfaceIASTInitializer- Specified by:
copyin interfaceIASTInitializerClause- Specified by:
copyin interfaceIASTNode
-
copy
ICPPASTDesignatedInitializer 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 interfaceIASTInitializer- 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.
-
-