Package org.eclipse.cdt.core.dom.ast
Interface IASTInitializerList
-
- All Superinterfaces:
IASTInitializer
,IASTInitializerClause
,IASTNode
- All Known Subinterfaces:
ICPPASTInitializerList
public interface IASTInitializerList extends IASTInitializer, IASTInitializerClause
Braced initializer list, for example as in:int a[]= {1,2,3};
- 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 ASTNodeProperty
NESTED_INITIALIZER
-
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 Deprecated Methods Modifier and Type Method Description void
addClause(IASTInitializerClause clause)
Add an initializer clause to the initializer list.void
addInitializer(IASTInitializer initializer)
Deprecated.Replaced byaddClause(IASTInitializerClause)
.IASTInitializerList
copy()
Returns a mutable copy of the tree rooted at this node.IASTInitializerList
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.IASTInitializerClause[]
getClauses()
Returns the list of initializers.IASTInitializer[]
getInitializers()
Deprecated.Replaced bygetClauses()
.int
getSize()
Returns the size of the initializer list, including trivial initializers.-
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
-
-
-
-
Field Detail
-
NESTED_INITIALIZER
static final ASTNodeProperty NESTED_INITIALIZER
-
-
Method Detail
-
getSize
int getSize()
Returns the size of the initializer list, including trivial initializers. This size may be larger than the length of the array returned bygetInitializers()
.- Since:
- 5.2
-
getClauses
IASTInitializerClause[] getClauses()
Returns the list of initializers. Depending on how the ast was created, this may omit trivial initializers in order to save memory.- Since:
- 5.2
-
addClause
void addClause(IASTInitializerClause clause)
Add an initializer clause to the initializer list. Depending on how the AST is created the initializer may benull
. Anull
initializer will not be returned bygetInitializers()
, however it contributes to the actual element count (#getSize()).- Since:
- 5.2
-
copy
IASTInitializerList copy()
Description copied from interface:IASTNode
Returns 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:
copy
in interfaceIASTInitializer
- Specified by:
copy
in interfaceIASTInitializerClause
- Specified by:
copy
in interfaceIASTNode
- Since:
- 5.1
-
copy
IASTInitializerList copy(IASTNode.CopyStyle style)
Description copied from interface:IASTNode
Returns 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:
copy
in interfaceIASTInitializer
- Specified by:
copy
in interfaceIASTInitializerClause
- Specified by:
copy
in interfaceIASTNode
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-
getInitializers
@Deprecated IASTInitializer[] getInitializers()
Deprecated.Replaced bygetClauses()
.- Restriction:
- This method is not intended to be referenced by clients.
-
addInitializer
@Deprecated void addInitializer(IASTInitializer initializer)
Deprecated.Replaced byaddClause(IASTInitializerClause)
.- Restriction:
- This method is not intended to be referenced by clients.
-
-