Package org.eclipse.cdt.core.dom.ast
Interface IASTCompositeTypeSpecifier
-
- All Superinterfaces:
IASTAttributeOwner
,IASTDeclarationListOwner
,IASTDeclSpecifier
,IASTNameOwner
,IASTNode
- All Known Subinterfaces:
ICASTCompositeTypeSpecifier
,ICPPASTCompositeTypeSpecifier
public interface IASTCompositeTypeSpecifier extends IASTDeclSpecifier, IASTNameOwner, IASTDeclarationListOwner
A composite type specifier represents a composite structure (contains declarations).- 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
Fields Modifier and Type Field Description static int
k_last
k_last
allows for subinterfaces to continue enumerating keys.static int
k_struct
k_struct
represents 'struct' in C and C++.static int
k_union
k_union
represents 'union' in C and C++.static ASTNodeProperty
MEMBER_DECLARATION
MEMBER_DECLARATION
represents the relationship between anIASTCompositeTypeSpecifier
and its nestedIASTDeclaration
s.static ASTNodeProperty
TYPE_NAME
TYPE_NAME
represents the relationship between anIASTCompositeTypeSpecifier
and itsIASTName
.-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIER
-
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 Modifier and Type Method Description void
addMemberDeclaration(IASTDeclaration declaration)
Adds a member declaration.IASTCompositeTypeSpecifier
copy()
Returns a mutable copy of the tree rooted at this node.int
getKey()
Returns the type (key) of this composite specifier.IASTDeclaration[]
getMembers()
Returns a list of member declarations.IASTName
getName()
Returns the name for this composite type.IScope
getScope()
Returns the scope that this interface eludes to in the logical tree.void
setKey(int key)
Sets the type (key) of this composite specifier.void
setName(IASTName name)
Sets the name for this composite type.-
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.IASTDeclarationListOwner
addDeclaration, getDeclarations
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier
copy, 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
-
-
-
-
Field Detail
-
k_struct
static final int k_struct
k_struct
represents 'struct' in C and C++.- See Also:
- Constant Field Values
-
k_union
static final int k_union
k_union
represents 'union' in C and C++.- See Also:
- Constant Field Values
-
k_last
static final int k_last
k_last
allows for subinterfaces to continue enumerating keys.- See Also:
- Constant Field Values
-
TYPE_NAME
static final ASTNodeProperty TYPE_NAME
TYPE_NAME
represents the relationship between anIASTCompositeTypeSpecifier
and itsIASTName
.
-
MEMBER_DECLARATION
static final ASTNodeProperty MEMBER_DECLARATION
MEMBER_DECLARATION
represents the relationship between anIASTCompositeTypeSpecifier
and its nestedIASTDeclaration
s.
-
-
Method Detail
-
getKey
int getKey()
Returns the type (key) of this composite specifier.
-
setKey
void setKey(int key)
Sets the type (key) of this composite specifier.
-
getName
IASTName getName()
Returns the name for this composite type. If this is an anonymous type, this will return an empty name.- Returns:
- the name of the type
-
setName
void setName(IASTName name)
Sets the name for this composite type.- Parameters:
name
-
-
getMembers
IASTDeclaration[] getMembers()
Returns a list of member declarations.- Returns:
- List of IASTDeclaration
-
addMemberDeclaration
void addMemberDeclaration(IASTDeclaration declaration)
Adds a member declaration.- Parameters:
declaration
-
-
getScope
IScope getScope()
Returns the scope that this interface eludes to in the logical tree.
-
copy
IASTCompositeTypeSpecifier 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 interfaceIASTDeclSpecifier
- Specified by:
copy
in interfaceIASTNode
- Since:
- 5.1
-
-