Package org.eclipse.cdt.core.dom.ast
Interface IASTDeclSpecifier
- All Superinterfaces:
IASTAttributeOwner
,IASTNode
- All Known Subinterfaces:
IASTCompositeTypeSpecifier
,IASTElaboratedTypeSpecifier
,IASTEnumerationSpecifier
,IASTNamedTypeSpecifier
,IASTSimpleDeclSpecifier
,ICASTCompositeTypeSpecifier
,ICASTDeclSpecifier
,ICASTElaboratedTypeSpecifier
,ICASTEnumerationSpecifier
,ICASTSimpleDeclSpecifier
,ICASTTypedefNameSpecifier
,ICPPASTCompositeTypeSpecifier
,ICPPASTDeclSpecifier
,ICPPASTElaboratedTypeSpecifier
,ICPPASTEnumerationSpecifier
,ICPPASTNamedTypeSpecifier
,ICPPASTSimpleDeclSpecifier
,ICPPASTTypeTransformationSpecifier
,IGCCASTSimpleDeclSpecifier
,IGPPASTDeclSpecifier
,IGPPASTSimpleDeclSpecifier
This is the base interface that represents a declaration specifier sequence.
- 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
Modifier and TypeFieldDescriptionstatic final ASTNodeProperty
Deprecated.Not used.static final int
static final int
static final int
static final int
static final int
static final int
static final int
No storage class specified.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIER
Fields 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.Deprecated.Use ICASTDeclSpecifier.getAlignmentSpecifiers() for C code.int
Returns the storage class, which is one of the constants sc_...boolean
isConst()
boolean
isInline()
boolean
boolean
void
setAlignmentSpecifiers
(IASTAlignmentSpecifier[] alignmentSpecifiers) Deprecated.Use ICASTDeclSpecifier.setAlignmentSpecifiers() for C code.void
setConst
(boolean value) Not allowed on frozen ast.void
setInline
(boolean value) Not allowed on frozen ast.void
setRestrict
(boolean value) Not allowed on frozen ast.void
setStorageClass
(int storageClass) Not allowed on frozen ast.void
setVolatile
(boolean value) Not allowed on frozen ast.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiers
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 Details
-
sc_unspecified
static final int sc_unspecifiedNo storage class specified.- See Also:
-
sc_typedef
static final int sc_typedef- See Also:
-
sc_extern
static final int sc_extern- See Also:
-
sc_static
static final int sc_static- See Also:
-
sc_auto
static final int sc_auto- See Also:
-
sc_register
static final int sc_register- See Also:
-
sc_mutable
static final int sc_mutable- Since:
- 5.2
- See Also:
-
ALIGNMENT_SPECIFIER
Deprecated.Not used.- Since:
- 5.10
- Restriction:
- This field is not intended to be referenced by clients.
-
-
Method Details
-
getStorageClass
int getStorageClass()Returns the storage class, which is one of the constants sc_... -
isConst
boolean isConst() -
isVolatile
boolean isVolatile() -
isRestrict
boolean isRestrict()- Since:
- 5.2
-
isInline
boolean isInline() -
getAlignmentSpecifiers
Deprecated.Use ICASTDeclSpecifier.getAlignmentSpecifiers() for C code. In C++ code, alignment specifiers are now stored in the attribute specifier sequence.- Since:
- 5.10
- Restriction:
- This method is not intended to be referenced by clients.
-
copy
IASTDeclSpecifier 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)
. -
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.- 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
-
setStorageClass
void setStorageClass(int storageClass) Not allowed on frozen ast. -
setConst
void setConst(boolean value) Not allowed on frozen ast. -
setVolatile
void setVolatile(boolean value) Not allowed on frozen ast. -
setRestrict
void setRestrict(boolean value) Not allowed on frozen ast.- Since:
- 5.2
-
setInline
void setInline(boolean value) Not allowed on frozen ast. -
setAlignmentSpecifiers
Deprecated.Use ICASTDeclSpecifier.setAlignmentSpecifiers() for C code. In C++ code, alignment specifiers are now stored in the attribute specifier sequence.- Since:
- 5.10
- Restriction:
- This method is not intended to be referenced by clients.
-