public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifier, ICPPASTDeclSpecifier
Modifier and Type | Interface and Description |
---|---|
static interface |
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier
Base specifiers are where a class expresses from whom it inherits.
|
Modifier and Type | Field and Description |
---|---|
static ASTNodeProperty |
BASE_SPECIFIER
BASE_SPECIFIER expresses the subclass role. |
static ASTNodeProperty |
CLASS_VIRT_SPECIFIER |
static int |
k_class
k_class C++ introduces the class concept for composite types. |
static int |
k_last
k_last allows for subinterfaces to extend the kind type. |
static ASTNodeProperty |
VISIBILITY_LABEL
VISIBILITY_LABEL is used to express the relationship for a visibility label "declaration". |
k_struct, k_union, MEMBER_DECLARATION, TYPE_NAME
r_declaration, r_definition, r_reference, r_unclear
ALIGNMENT_SPECIFIER, sc_auto, sc_extern, sc_mutable, sc_register, sc_static, sc_typedef, sc_unspecified
ATTRIBUTE, ATTRIBUTE_SPECIFIER
Modifier and Type | Method and Description |
---|---|
void |
addBaseSpecifier(ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier baseSpec)
Adds a base specifier.
|
ICPPASTCompositeTypeSpecifier |
copy()
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTCompositeTypeSpecifier |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[] |
getBaseSpecifiers()
Returns the base specifiers.
|
ICPPClassScope |
getScope()
Returns the scope that this interface eludes to in the logical tree.
|
ICPPASTClassVirtSpecifier |
getVirtSpecifier()
Returns the class-virt-specifier of this class, or null if it doesn't have one.
|
boolean |
isFinal()
Queries whether the type is final.
|
void |
setFinal(boolean isFinal)
Deprecated.
Use setVirtSpecifier() instead.
|
void |
setVirtSpecifier(ICPPASTClassVirtSpecifier virtSpecifier)
Sets the class-virt-specifier for this class.
|
addMemberDeclaration, getKey, getMembers, getName, setKey, setName
getRoleForName
addDeclaration, getDeclarations
isConstexpr, isExplicit, isFriend, isThreadLocal, isVirtual, setConstexpr, setExplicit, setFriend, setThreadLocal, setVirtual
getAlignmentSpecifiers, getStorageClass, isConst, isInline, isRestrict, isVolatile, setAlignmentSpecifiers, setConst, setInline, setRestrict, setStorageClass, setVolatile
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiers
static final int k_class
k_class
C++ introduces the class concept for composite types.static final int k_last
k_last
allows for subinterfaces to extend the kind type.static final ASTNodeProperty VISIBILITY_LABEL
VISIBILITY_LABEL
is used to express the relationship for a visibility label "declaration".static final ASTNodeProperty BASE_SPECIFIER
BASE_SPECIFIER
expresses the subclass role.static final ASTNodeProperty CLASS_VIRT_SPECIFIER
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[] getBaseSpecifiers()
ICPPASTBaseSpecifier[]
void addBaseSpecifier(ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier baseSpec)
baseSpec
- ICPPASTBaseSpecifier
ICPPClassScope getScope()
IASTCompositeTypeSpecifier
getScope
in interface IASTCompositeTypeSpecifier
ICPPASTCompositeTypeSpecifier copy()
IASTNode
copy.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 IASTCompositeTypeSpecifier
copy
in interface IASTDeclSpecifier
copy
in interface IASTNode
copy
in interface ICPPASTDeclSpecifier
ICPPASTCompositeTypeSpecifier copy(IASTNode.CopyStyle style)
IASTNode
copy.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 IASTDeclSpecifier
copy
in interface IASTNode
copy
in interface ICPPASTDeclSpecifier
style
- IASTNode.CopyStyle
create a copy with or without locations. Please see
IASTNode.CopyStyle
for restrictions on copies with Locations.boolean isFinal()
@Deprecated void setFinal(boolean isFinal)
ICPPASTClassVirtSpecifier getVirtSpecifier()
void setVirtSpecifier(ICPPASTClassVirtSpecifier virtSpecifier)
Copyright (c) IBM Corp. and others 2004, 2020. All Rights Reserved.