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 interfaceICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifierBase 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 ASTNodePropertyBASE_SPECIFIERBASE_SPECIFIERexpresses the subclass role.static ASTNodePropertyCLASS_VIRT_SPECIFIERstatic intk_classk_classC++ introduces the class concept for composite types.static intk_lastk_lastallows for subinterfaces to extend the kind type.static ASTNodePropertyVISIBILITY_LABELVISIBILITY_LABELis 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 voidaddBaseSpecifier(ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier baseSpec)Adds a base specifier.ICPPASTCompositeTypeSpecifiercopy()Returns a mutable copy of the tree rooted at this node.ICPPASTCompositeTypeSpecifiercopy(IASTNode.CopyStyle style)Returns a mutable copy of the tree rooted at this node.ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[]getBaseSpecifiers()Returns the base specifiers.ICPPClassScopegetScope()Returns the scope that this interface eludes to in the logical tree.ICPPASTClassVirtSpecifiergetVirtSpecifier()Returns the class-virt-specifier of this class, or null if it doesn't have one.booleanisFinal()Queries whether the type is final.voidsetFinal(boolean isFinal)Deprecated.Use setVirtSpecifier() instead.voidsetVirtSpecifier(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_classC++ introduces the class concept for composite types.- See Also:
- Constant Field Values
-
k_last
static final int k_last
k_lastallows for subinterfaces to extend the kind type.- See Also:
- Constant Field Values
-
VISIBILITY_LABEL
static final ASTNodeProperty VISIBILITY_LABEL
VISIBILITY_LABELis used to express the relationship for a visibility label "declaration".
-
BASE_SPECIFIER
static final ASTNodeProperty BASE_SPECIFIER
BASE_SPECIFIERexpresses 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:IASTCompositeTypeSpecifierReturns the scope that this interface eludes to in the logical tree.- Specified by:
getScopein interfaceIASTCompositeTypeSpecifier- Since:
- 5.1
-
copy
ICPPASTCompositeTypeSpecifier 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 interfaceIASTCompositeTypeSpecifier- Specified by:
copyin interfaceIASTDeclSpecifier- Specified by:
copyin interfaceIASTNode- Specified by:
copyin interfaceICPPASTDeclSpecifier- Since:
- 5.1
-
copy
ICPPASTCompositeTypeSpecifier copy(IASTNode.CopyStyle style)
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 interfaceIASTDeclSpecifier- Specified by:
copyin interfaceIASTNode- Specified by:
copyin interfaceICPPASTDeclSpecifier- Parameters:
style-IASTNode.CopyStylecreate a copy with or without locations. Please seeIASTNode.CopyStylefor 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
-
-