Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTCompositeTypeSpecifier
-
- All Superinterfaces:
IASTAttributeOwner
,IASTCompositeTypeSpecifier
,IASTDeclarationListOwner
,IASTDeclSpecifier
,IASTNameOwner
,IASTNode
,ICPPASTDeclSpecifier
public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifier, ICPPASTDeclSpecifier
- 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 Modifier and Type Interface Description static interface
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier
Base specifiers are where a class expresses from whom it inherits.-
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
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".-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIER
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTCompositeTypeSpecifier
k_struct, k_union, MEMBER_DECLARATION, TYPE_NAME
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier
ALIGNMENT_SPECIFIER, sc_auto, sc_extern, sc_mutable, sc_register, sc_static, sc_typedef, sc_unspecified
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
r_declaration, r_definition, r_reference, r_unclear
-
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
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.-
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.IASTCompositeTypeSpecifier
addMemberDeclaration, getKey, getMembers, getName, setKey, setName
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarationListOwner
addDeclaration, getDeclarations
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier
getAlignmentSpecifiers, getStorageClass, isConst, isInline, isRestrict, isVolatile, setAlignmentSpecifiers, setConst, setInline, setRestrict, setStorageClass, setVolatile
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
getRoleForName
-
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
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPASTDeclSpecifier
isConstexpr, isExplicit, isFriend, isThreadLocal, isVirtual, setConstexpr, setExplicit, setFriend, setThreadLocal, setVirtual
-
-
-
-
Field Detail
-
k_class
static final int k_class
k_class
C++ introduces the class concept for composite types.- See Also:
- Constant Field Values
-
k_last
static final int k_last
k_last
allows for subinterfaces to extend the kind type.- See Also:
- Constant Field Values
-
VISIBILITY_LABEL
static final ASTNodeProperty VISIBILITY_LABEL
VISIBILITY_LABEL
is used to express the relationship for a visibility label "declaration".
-
BASE_SPECIFIER
static final ASTNodeProperty BASE_SPECIFIER
BASE_SPECIFIER
expresses the subclass role.
-
CLASS_VIRT_SPECIFIER
static final ASTNodeProperty CLASS_VIRT_SPECIFIER
- Since:
- 5.7
-
-
Method Detail
-
getBaseSpecifiers
ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[] getBaseSpecifiers()
Returns the base specifiers.- Returns:
ICPPASTBaseSpecifier[]
-
addBaseSpecifier
void addBaseSpecifier(ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier baseSpec)
Adds a base specifier.- Parameters:
baseSpec
-ICPPASTBaseSpecifier
-
getScope
ICPPClassScope getScope()
Description copied from interface:IASTCompositeTypeSpecifier
Returns the scope that this interface eludes to in the logical tree.- Specified by:
getScope
in interfaceIASTCompositeTypeSpecifier
- Since:
- 5.1
-
copy
ICPPASTCompositeTypeSpecifier 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 interfaceIASTCompositeTypeSpecifier
- Specified by:
copy
in interfaceIASTDeclSpecifier
- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTDeclSpecifier
- Since:
- 5.1
-
copy
ICPPASTCompositeTypeSpecifier 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 interfaceIASTDeclSpecifier
- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTDeclSpecifier
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-
isFinal
boolean isFinal()
Queries whether the type is final.- Since:
- 5.5
-
setFinal
@Deprecated void setFinal(boolean isFinal)
Deprecated.Use setVirtSpecifier() instead.Sets whether the type is final.- Since:
- 5.5
-
getVirtSpecifier
ICPPASTClassVirtSpecifier getVirtSpecifier()
Returns the class-virt-specifier of this class, or null if it doesn't have one.- Since:
- 5.7
-
setVirtSpecifier
void setVirtSpecifier(ICPPASTClassVirtSpecifier virtSpecifier)
Sets the class-virt-specifier for this class.- Since:
- 5.7
-
-