Package org.eclipse.cdt.core.dom.ast.c
Interface ICASTArrayModifier
- All Superinterfaces:
IASTArrayModifier,IASTAttributeOwner,IASTNode
This interface represents the role of a C array modifier. C allows for
modifiers (const, restrict, etc.) as well as variable sized arrays.
- 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 inherited from interface org.eclipse.cdt.core.dom.ast.IASTArrayModifier
CONSTANT_EXPRESSION, EMPTY_ARRAYFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIERFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY -
Method Summary
Modifier and TypeMethodDescriptioncopy()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.booleanisConst()Is the const modifier used?booleanIs the restrict modifier used?booleanisStatic()Is the static modifier used?booleanIs the array variable sized? ( used ...booleanIs the volatile modifier used?voidsetConst(boolean value) Set true/false that the const modifier is used.voidsetRestrict(boolean value) Set true/false that the restrict modifier is used.voidsetStatic(boolean value) Set true/false that the static modifier is used.voidsetVariableSized(boolean value) Set the array to be variable sized dependent upon value.voidsetVolatile(boolean value) Set true/false that the volatile modifier is used.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTArrayModifier
getConstantExpression, setConstantExpressionMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiersMethods 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
-
Method Details
-
isConst
boolean isConst()Is the const modifier used?- Returns:
- boolean
-
isStatic
boolean isStatic()Is the static modifier used?- Returns:
- boolean
-
isRestrict
boolean isRestrict()Is the restrict modifier used?- Returns:
- boolean
-
isVolatile
boolean isVolatile()Is the volatile modifier used?- Returns:
- boolean
-
setConst
void setConst(boolean value) Set true/false that the const modifier is used.- Parameters:
value- boolean
-
setVolatile
void setVolatile(boolean value) Set true/false that the volatile modifier is used.- Parameters:
value- boolean
-
setRestrict
void setRestrict(boolean value) Set true/false that the restrict modifier is used.- Parameters:
value- boolean
-
setStatic
void setStatic(boolean value) Set true/false that the static modifier is used.- Parameters:
value- boolean
-
isVariableSized
boolean isVariableSized()Is the array variable sized? ( used ... )- Returns:
- boolean
-
setVariableSized
void setVariableSized(boolean value) Set the array to be variable sized dependent upon value.- Parameters:
value- boolean
-
copy
ICASTArrayModifier 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 interfaceIASTArrayModifier- 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 interfaceIASTArrayModifier- 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
-