Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTLinkageSpecification
- All Superinterfaces:
IASTDeclaration
,IASTDeclarationListOwner
,IASTNode
This interface represents a linkage specification. e.g. extern "C" { ... }
- 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
Modifier and TypeFieldDescriptionstatic final ASTNodeProperty
OWNED_DECLARATION
is the owned declaration role for linkages.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclaration
EMPTY_DECLARATION_ARRAY
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addDeclaration
(IASTDeclaration declaration) Adds another declaration to the linkage.copy()
Returns a mutable copy of the tree rooted at this node.copy
(IASTNode.CopyStyle style) Returns a mutable copy of the tree rooted at this node.Returns all of the declarations.Returns the "literal" that represents the linkage.void
setLiteral
(String value) Sets the "literal" that represents the linkage.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarationListOwner
getDeclarations
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 Details
-
OWNED_DECLARATION
OWNED_DECLARATION
is the owned declaration role for linkages.
-
-
Method Details
-
getLiteral
String getLiteral()Returns the "literal" that represents the linkage.- Returns:
- String
-
setLiteral
Sets the "literal" that represents the linkage.- Parameters:
value
- the "literal" that represents the linkage
-
getDeclarations
IASTDeclaration[] getDeclarations()Returns all of the declarations.- Returns:
IASTDeclaration[]
-
addDeclaration
Adds another declaration to the linkage.- Specified by:
addDeclaration
in interfaceIASTDeclarationListOwner
- Parameters:
declaration
- the declaration to add
-
copy
ICPPASTLinkageSpecification 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 interfaceIASTDeclaration
- Specified by:
copy
in interfaceIASTNode
- Since:
- 5.1
-
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.- Specified by:
copy
in interfaceIASTDeclaration
- Specified by:
copy
in interfaceIASTNode
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-