public interface ICPPASTEnumerationSpecifier extends IASTEnumerationSpecifier, ICPPASTDeclSpecifier
enum struct : unsigned int {...}IASTEnumerationSpecifier.IASTEnumeratorIASTNode.CopyStyle| Modifier and Type | Field and Description |
|---|---|
static ASTNodeProperty |
BASE_TYPE |
ENUMERATION_NAME, ENUMERATORr_declaration, r_definition, r_reference, r_unclearALIGNMENT_SPECIFIER, sc_auto, sc_extern, sc_mutable, sc_register, sc_static, sc_typedef, sc_unspecifiedATTRIBUTE, ATTRIBUTE_SPECIFIEREMPTY_NODE_ARRAY| Modifier and Type | Method and Description |
|---|---|
ICPPASTEnumerationSpecifier |
copy()
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTEnumerationSpecifier |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTDeclSpecifier |
getBaseType()
Returns the base type for this enum or
null if it was not specified. |
ICPPScope |
getScope()
Returns the scope containing the enumerators of this enumeration,
or
null if the specifier is opaque. |
boolean |
isOpaque()
An opaque specifier does not have a body.
|
boolean |
isScoped()
An enum is scoped if it uses the enumeration head
enum class or enum struct. |
void |
setBaseType(ICPPASTDeclSpecifier baseType)
Not allowed on frozen ast.
|
void |
setIsOpaque(boolean isOpaque)
Not allowed on frozen AST.
|
void |
setIsScoped(boolean isScoped)
Not allowed on frozen AST.
|
addEnumerator, getEnumerators, getName, setNamegetRoleForNameisConstexpr, isExplicit, isFriend, isThreadLocal, isVirtual, setConstexpr, setExplicit, setFriend, setThreadLocal, setVirtualgetAlignmentSpecifiers, getStorageClass, isConst, isInline, isRestrict, isVolatile, setAlignmentSpecifiers, setConst, setInline, setRestrict, setStorageClass, setVolatileaddAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiersaccept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParentstatic final ASTNodeProperty BASE_TYPE
ICPPASTEnumerationSpecifier copy()
IASTNodecopy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor 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 in interface IASTDeclSpecifiercopy in interface IASTEnumerationSpecifiercopy in interface IASTNodecopy in interface ICPPASTDeclSpecifierICPPASTEnumerationSpecifier copy(IASTNode.CopyStyle style)
IASTNodecopy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
copy in interface IASTDeclSpecifiercopy in interface IASTEnumerationSpecifiercopy in interface IASTNodecopy in interface ICPPASTDeclSpecifierstyle - IASTNode.CopyStyle create a copy with or without locations. Please see
IASTNode.CopyStyle for restrictions on copies with Locations.void setIsScoped(boolean isScoped)
boolean isScoped()
enum class or enum struct.void setIsOpaque(boolean isOpaque)
boolean isOpaque()
void setBaseType(ICPPASTDeclSpecifier baseType)
ICPPASTDeclSpecifier getBaseType()
null if it was not specified.ICPPScope getScope()
null if the specifier is opaque.