Package org.eclipse.cdt.core.dom.ast
Interface IASTDeclaration
- All Superinterfaces:
IASTNode
- All Known Subinterfaces:
IASTASMDeclaration
,IASTFunctionDefinition
,IASTProblemDeclaration
,IASTSimpleDeclaration
,ICPPASTAliasDeclaration
,ICPPASTExplicitTemplateInstantiation
,ICPPASTFunctionDefinition
,ICPPASTFunctionWithTryBlock
,ICPPASTInitCapture
,ICPPASTLinkageSpecification
,ICPPASTNamespaceAlias
,ICPPASTNamespaceDefinition
,ICPPASTStaticAssertDeclaration
,ICPPASTStructuredBindingDeclaration
,ICPPASTTemplateDeclaration
,ICPPASTTemplateSpecialization
,ICPPASTUsingDeclaration
,ICPPASTUsingDirective
,ICPPASTVisibilityLabel
,IGPPASTExplicitTemplateInstantiation
This is the root class of all 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 inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptioncopy()
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.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
-
EMPTY_DECLARATION_ARRAY
-
-
Method Details
-
copy
IASTDeclaration 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)
. -
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 interfaceIASTNode
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-