Package org.eclipse.cdt.core.dom.ast
Interface IASTImplicitName
-
- All Known Subinterfaces:
IASTImplicitDestructorName
public interface IASTImplicitName extends IASTName
An implicit name is used to resolve uses of implicit bindings, such as overloaded operators. Implicit names are not generated unless they resolve to something.- Since:
- 5.1
- See Also:
ASTVisitor.shouldVisitImplicitNames
- 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 IASTImplicitName[]
EMPTY_NAME_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.IName
EMPTY_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IASTName
copy()
This method is not supported on implicit names.boolean
isAlternate()
Returnstrue
if this node is an alternate.boolean
isOperator()
Convenience method that returns true if this name represents an overloaded operator.IBinding
resolveBinding()
Resolves the semantic object this name is referring to.-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTName
copy, getBinding, getCompletionContext, getImageLocation, getLastName, getLinkage, getLookupKey, getPreBinding, getRoleOfName, isQualified, resolvePreBinding, setBinding, toCharArray, toString
-
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.IName
getFileLocation, getSimpleID, isDeclaration, isDefinition, isReference
-
-
-
-
Field Detail
-
EMPTY_NAME_ARRAY
static final IASTImplicitName[] EMPTY_NAME_ARRAY
-
-
Method Detail
-
resolveBinding
IBinding resolveBinding()
Resolves the semantic object this name is referring to. Redeclared with strengthened postcondition. Will not returnnull
, but may return a problem binding, for example for an implicit constructor call.- Specified by:
resolveBinding
in interfaceIASTName
- Returns:
IBinding
binding
-
isAlternate
boolean isAlternate()
Returnstrue
if this node is an alternate. Sometimes more than one implicit name is generated for the same binding but with different offsets, when this happens the additional names generated are considered alternates.
-
isOperator
boolean isOperator()
Convenience method that returns true if this name represents an overloaded operator.
-
copy
IASTName copy() throws UnsupportedOperationException
This method is not supported on implicit names. Implicit names are not copied when an AST is copied, instead the implicit names are regenerated when needed.- Specified by:
copy
in interfaceIASTName
- Specified by:
copy
in interfaceIASTNode
- Throws:
UnsupportedOperationException
- always
-
-