Package org.eclipse.cdt.core.dom.ast
Interface IASTImplicitName
- All Known Subinterfaces:
IASTImplicitDestructorName
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:
- 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
Fields inherited from interface org.eclipse.cdt.core.dom.IName
EMPTY_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptioncopy()
This method is not supported on implicit names.boolean
Returnstrue
if this node is an alternate.boolean
Convenience method that returns true if this name represents an overloaded operator.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 Details
-
EMPTY_NAME_ARRAY
-
-
Method Details
-
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
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
-