public interface ICPPASTQualifiedName extends ICPPASTName, IASTNameOwner
IASTNode.CopyStyle| Modifier and Type | Field and Description |
|---|---|
static ASTNodeProperty |
SEGMENT_NAME
Each ICPPASTNameSpecifier segment has property being
SEGMENT_NAME. |
EMPTY_NAME_ARRAYEMPTY_NAME_SPECIFIER_ARRAYEMPTY_NODE_ARRAYr_declaration, r_definition, r_reference, r_unclear| Modifier and Type | Method and Description |
|---|---|
void |
addName(IASTName name)
Adds a name segment.
|
void |
addNameSpecifier(ICPPASTNameSpecifier nameSpecifier)
Adds a segment to the end of the qualifier.
|
ICPPASTQualifiedName |
copy()
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTQualifiedName |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTNameSpecifier[] |
getAllSegments()
Returns all segments of the name.
|
IASTName |
getLastName()
The last name is often semantically significant.
|
IASTName[] |
getNames()
Deprecated.
This cannot represent all qualified names in C++11,
where the first segment of a qualifier name may be a decltype-specifier.
Use
getLastName() and getQualifier() instead.
If called on a name where a segment is a decltype-specifier,
UnsupportedOperationException is thrown. |
ICPPASTNameSpecifier[] |
getQualifier()
Returns all segments of the name but the last.
|
boolean |
isConversionOrOperator()
Returns
true if last segment is an ICPPASTConversionName or an ICPPASTOperatorName. |
boolean |
isFullyQualified()
Is this name fully qualified?
|
void |
setFullyQualified(boolean value)
Sets this name to be fully qualified or not (true/false).
|
void |
setLastName(ICPPASTName name)
Sets the last name.
|
getBinding, getCompletionContext, getImageLocation, getLinkage, getLookupKey, getPreBinding, getRoleOfName, isQualified, resolveBinding, resolvePreBinding, setBinding, toCharArray, toStringgetFileLocation, getSimpleID, isDeclaration, isDefinition, isReferenceresolveBinding, resolvePreBinding, toCharArrayaccept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParentgetRoleForNamestatic final ASTNodeProperty SEGMENT_NAME
SEGMENT_NAME.void addName(IASTName name)
name - IASTNamevoid addNameSpecifier(ICPPASTNameSpecifier nameSpecifier)
void setLastName(ICPPASTName name)
@Deprecated IASTName[] getNames()
getLastName() and getQualifier() instead.
If called on a name where a segment is a decltype-specifier,
UnsupportedOperationException is thrown.IASTName []ICPPASTNameSpecifier[] getQualifier()
ICPPASTNameSpecifier[] getAllSegments()
IASTName getLastName()
getLastName in interface IASTNameboolean isFullyQualified()
void setFullyQualified(boolean value)
value - booleanboolean isConversionOrOperator()
true if last segment is an ICPPASTConversionName or an ICPPASTOperatorName.ICPPASTQualifiedName copy()
IASTNodecopy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor 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 in interface IASTNamecopy in interface IASTNodecopy in interface ICPPASTNamecopy in interface ICPPASTNameSpecifierICPPASTQualifiedName copy(IASTNode.CopyStyle style)
IASTNodecopy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
copy in interface IASTNamecopy in interface IASTNodecopy in interface ICPPASTNamecopy in interface ICPPASTNameSpecifierstyle - IASTNode.CopyStyle create a copy with or without locations. Please see
IASTNode.CopyStyle for restrictions on copies with Locations.Copyright (c) IBM Corp. and others 2004, 2014. All Rights Reserved.