Class BucketedEObjectDescription
- java.lang.Object
-
- org.eclipse.xtext.resource.AbstractEObjectDescription
-
- org.eclipse.xtext.resource.EObjectDescription
-
- org.eclipse.xtext.xbase.scoping.batch.BucketedEObjectDescription
-
- All Implemented Interfaces:
org.eclipse.xtext.resource.IEObjectDescription,IIdentifiableElementDescription
- Direct Known Subclasses:
ConstructorDescription,InstanceFeatureDescription,InstanceFeatureDescriptionWithoutReceiver,QualifiedThisOrSuperDescription,StaticExtensionFeatureDescription,StaticFeatureDescription
public abstract class BucketedEObjectDescription extends org.eclipse.xtext.resource.EObjectDescription implements IIdentifiableElementDescription
A description that contains some more information, e.g. on the bound type parameters, the receiver or its type. The bucket concept allows to properly identify ambiguous descriptions, e.g. if two descriptions from the very same bucket are matching with equal confidence, the link is ambiguous and should be indicated as such. A possible scenario is a conflict in the static imports where two imported types have the very same static method signature, e.g.main(String[]). If the client tries to invoke that method without an explicitly declared receiver, it should be flagged as ambiguous.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedBucketedEObjectDescription(org.eclipse.xtext.naming.QualifiedName qualifiedName, org.eclipse.xtext.common.types.JvmIdentifiableElement feature, int bucketId, boolean visible)
-
Method Summary
-
Methods inherited from class org.eclipse.xtext.resource.EObjectDescription
create, create, create, create, getEClass, getEObjectOrProxy, getEObjectURI, getName, getQualifiedName, getUserData, getUserDataKeys, normalize
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.xtext.resource.IEObjectDescription
getEClass, getEObjectOrProxy, getEObjectURI, getName, getQualifiedName, getUserData, getUserDataKeys
-
Methods inherited from interface org.eclipse.xtext.xbase.scoping.batch.IIdentifiableElementDescription
isExtension, isStatic
-
-
-
-
Method Detail
-
getShadowingKey
public java.lang.String getShadowingKey()
- Specified by:
getShadowingKeyin interfaceIIdentifiableElementDescription
-
computeShadowingKey
protected void computeShadowingKey(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable, java.lang.StringBuilder result)
-
getBucketId
public int getBucketId()
- Specified by:
getBucketIdin interfaceIIdentifiableElementDescription
-
getImplicitReceiverType
public LightweightTypeReference getImplicitReceiverType()
- Specified by:
getImplicitReceiverTypein interfaceIIdentifiableElementDescription
-
getImplicitReceiver
public XExpression getImplicitReceiver()
Returns the actual receiver of this (potential) feature call. It may benulleven though there is a syntactic receiver available (in case of static features).- Specified by:
getImplicitReceiverin interfaceIIdentifiableElementDescription
-
getImplicitReceiverTypeParameterMapping
public java.util.Map<org.eclipse.xtext.common.types.JvmTypeParameter,LightweightMergedBoundTypeArgument> getImplicitReceiverTypeParameterMapping()
- Specified by:
getImplicitReceiverTypeParameterMappingin interfaceIIdentifiableElementDescription
-
getImplicitReceiverConformanceHints
public java.util.EnumSet<ConformanceHint> getImplicitReceiverConformanceHints()
- Specified by:
getImplicitReceiverConformanceHintsin interfaceIIdentifiableElementDescription
-
getImplicitReceiverConformanceFlags
public int getImplicitReceiverConformanceFlags()
- Specified by:
getImplicitReceiverConformanceFlagsin interfaceIIdentifiableElementDescription
-
getSyntacticReceiverType
public LightweightTypeReference getSyntacticReceiverType()
- Specified by:
getSyntacticReceiverTypein interfaceIIdentifiableElementDescription
-
getSyntacticReceiver
public XExpression getSyntacticReceiver()
- Specified by:
getSyntacticReceiverin interfaceIIdentifiableElementDescription
-
isSyntacticReceiverPossibleArgument
public boolean isSyntacticReceiverPossibleArgument()
- Specified by:
isSyntacticReceiverPossibleArgumentin interfaceIIdentifiableElementDescription
-
getSyntacticReceiverTypeParameterMapping
public java.util.Map<org.eclipse.xtext.common.types.JvmTypeParameter,LightweightMergedBoundTypeArgument> getSyntacticReceiverTypeParameterMapping()
- Specified by:
getSyntacticReceiverTypeParameterMappingin interfaceIIdentifiableElementDescription
-
getSyntacticReceiverConformanceHints
public java.util.EnumSet<ConformanceHint> getSyntacticReceiverConformanceHints()
- Specified by:
getSyntacticReceiverConformanceHintsin interfaceIIdentifiableElementDescription
-
getSyntacticReceiverConformanceFlags
public int getSyntacticReceiverConformanceFlags()
- Specified by:
getSyntacticReceiverConformanceFlagsin interfaceIIdentifiableElementDescription
-
isVisible
public boolean isVisible()
- Specified by:
isVisiblein interfaceIIdentifiableElementDescription
-
toString
public java.lang.String toString()
- Overrides:
toStringin classorg.eclipse.xtext.resource.AbstractEObjectDescription
-
getElementOrProxy
public org.eclipse.xtext.common.types.JvmIdentifiableElement getElementOrProxy()
- Specified by:
getElementOrProxyin interfaceIIdentifiableElementDescription
-
getImplicitFirstArgument
public XExpression getImplicitFirstArgument()
- Specified by:
getImplicitFirstArgumentin interfaceIIdentifiableElementDescription
-
getImplicitFirstArgumentType
public LightweightTypeReference getImplicitFirstArgumentType()
- Specified by:
getImplicitFirstArgumentTypein interfaceIIdentifiableElementDescription
-
isTypeLiteral
public boolean isTypeLiteral()
- Specified by:
isTypeLiteralin interfaceIIdentifiableElementDescription
-
isAnonymousClassConstructorCall
public boolean isAnonymousClassConstructorCall()
- Specified by:
isAnonymousClassConstructorCallin interfaceIIdentifiableElementDescription
-
getNumberOfIrrelevantParameters
public int getNumberOfIrrelevantParameters()
- Specified by:
getNumberOfIrrelevantParametersin interfaceIIdentifiableElementDescription
-
getNumberOfParameters
public int getNumberOfParameters()
- Specified by:
getNumberOfParametersin interfaceIIdentifiableElementDescription
-
isValidStaticState
public boolean isValidStaticState()
- Specified by:
isValidStaticStatein interfaceIIdentifiableElementDescription
-
-