public class StackedResolvedTypes extends ResolvedTypes
ResolvedTypes.Owner, ResolvedTypes.Shared, ResolvedTypes.SharedKeysAwareMap<K,V>, ResolvedTypes.SharedKeysAwareSet<E>IResolvedTypes.NullResolvedTypesNULL| Modifier | Constructor and Description |
|---|---|
protected |
StackedResolvedTypes(ResolvedTypes parent) |
| Modifier and Type | Method and Description |
|---|---|
void |
addDeclaredTypeParameters(java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> typeParameters) |
protected void |
appendContent(java.lang.StringBuilder result,
java.lang.String indentation) |
protected void |
clear() |
protected java.util.List<LightweightTypeReference> |
doGetActualTypeArguments(XExpression expression) |
protected LightweightTypeReference |
doGetActualTypeNoDeclaration(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable,
boolean ignoreReassignedTypes) |
protected IApplicableCandidate |
doGetCandidate(XExpression featureOrConstructorCall) |
protected IConstructorLinkingCandidate |
doGetConstructor(XConstructorCall constructorCall) |
protected LightweightTypeReference |
doGetDeclaredType(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable) |
protected IFeatureLinkingCandidate |
doGetFeature(XAbstractFeatureCall featureCall) |
protected org.eclipse.xtext.common.types.JvmIdentifiableElement |
doGetLinkedFeature(XExpression featureOrConstructorCall) |
protected java.util.List<TypeData> |
doGetTypeData(XExpression expression) |
protected boolean |
doIsResolved(java.lang.Object handle) |
protected int |
getConformanceFlags(XExpression expression,
boolean recompute) |
java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> |
getDeclaredTypeParameters() |
java.util.Collection<org.eclipse.xtext.util.IAcceptor<? super IResolvedTypes>> |
getDeferredLogic() |
java.util.List<LightweightTypeReference> |
getExpectedExceptions() |
protected LightweightTypeReference |
getExpectedTypeForAssociatedExpression(org.eclipse.xtext.common.types.JvmMember member,
XExpression expression) |
protected java.util.Map<org.eclipse.xtext.common.types.JvmIdentifiableElement,LightweightTypeReference> |
getFlattenedReassignedTypes() |
protected java.util.List<LightweightBoundTypeArgument> |
getHints(java.lang.Object handle) |
protected ResolvedTypes |
getParent() |
java.util.List<org.eclipse.xtext.diagnostics.AbstractDiagnostic> |
getQueuedDiagnostics() |
protected UnboundTypeReference |
getUnboundTypeReference(java.lang.Object handle) |
protected boolean |
isPropagatedType(XExpression expression) |
protected boolean |
isRefinedType(org.eclipse.xtext.common.types.JvmIdentifiableElement element) |
boolean |
isRefinedType(XExpression expression)
Returns
true if the expression's type is based on a type
refinement, e.g. |
protected void |
markToBeInferred(XExpression expression) |
protected void |
mergeDeferredRunnables(ResolvedTypes parent) |
protected void |
mergeExpressionTypesIntoParent(ResolvedTypes parent) |
protected void |
mergeInto(ResolvedTypes parent) |
protected void |
mergeIntoParent() |
protected void |
mergeLinkingCandidatesIntoParent(ResolvedTypes parent) |
protected void |
mergePropagatedTypes(ResolvedTypes parent) |
protected void |
mergeQueuedDiagnostics(ResolvedTypes parent) |
protected void |
mergeRefinedTypes(ResolvedTypes parent) |
protected void |
mergeTypeParametersIntoParent(ResolvedTypes parent) |
protected void |
mergeTypesIntoParent(ResolvedTypes parent) |
protected void |
performMergeIntoParent() |
protected TypeData |
prepareMerge(TypeData typeData,
ITypeReferenceOwner owner) |
protected void |
prepareMergeIntoParent() |
void |
reassignType(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable,
LightweightTypeReference reference) |
protected void |
refineExpectedType(XExpression receiver,
ITypeExpectation refinedExpectation) |
void |
replaceDeclaredTypeParameters(java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> typeParameters) |
acceptCandidate, acceptHint, acceptType, acceptType, acceptUnboundTypeReference, addDeferredLogic, addDiagnostic, addExpressionScope, addNonRecursiveHints, addNonRecursiveHints, addNonRecursiveHints, appendContent, appendContent, appendListMapContent, basicGetDeclardTypeParameters, basicGetExpressionTypes, basicGetLinkingMap, basicGetPropagatedTypes, basicGetReassignedTypes, basicGetRefinedTypes, basicGetTypeParameterHints, basicGetTypeParameters, basicGetTypes, checkCanceled, clearDeferredLogic, closeBracket, copyBoundTypeArgument, createUnboundTypeReference, discardExpectedExceptions, doGetActualType, doGetActualType, doGetExpectedType, doGetReturnType, getActualType, getActualType, getActualTypeArguments, getAllHints, getAmbiguousLinkingCandidates, getConformanceFlags, getConstructor, getContextResourceSet, getDeclaredType, getExpectedReturnType, getExpectedType, getExpressionScope, getFeature, getFeatureScopeTracker, getFollowUpErrors, getLinkedFeature, getLinkedFeature, getLinkingCandidate, getLinkingCandidate, getMergedType, getMonitor, getReferenceOwner, getResolver, getReturnType, getReturnType, getServices, getSeverities, getThrownExceptions, getTypeData, getTypeData, hasExpressionScope, isResolved, isVoidReturnTypeAllowed, isVoidTypeAllowed, mergeTypeData, pushExpectedExceptions, pushExpectedExceptions, pushReassigningTypes, pushTypes, pushTypes, reassignTypeWithoutMerge, removeRecursiveTypeArguments, replacePreviousExpressionScope, resolveDependentTypeArguments, setPropagatedType, setRefinedType, setType, toMultiType, toOwnedReference, toString, withFlattenedReassignedTypesprotected StackedResolvedTypes(ResolvedTypes parent)
protected void clear()
clear in class ResolvedTypesprotected ResolvedTypes getParent()
protected void mergeIntoParent()
protected void prepareMergeIntoParent()
protected void performMergeIntoParent()
protected void mergeInto(ResolvedTypes parent)
protected void mergePropagatedTypes(ResolvedTypes parent)
protected void mergeRefinedTypes(ResolvedTypes parent)
protected boolean isPropagatedType(XExpression expression)
isPropagatedType in class ResolvedTypespublic boolean isRefinedType(XExpression expression)
IResolvedTypestrue if the expression's type is based on a type
refinement, e.g. an instanceof guard my specialize the type of the checked
reference. Any feature call to that reference is considered to be based on
a refined type.isRefinedType in interface IResolvedTypesisRefinedType in class ResolvedTypesexpression - the expression that may have been typed based on a refinement.true if the type was refined, false otherwise.protected void mergeQueuedDiagnostics(ResolvedTypes parent)
protected void mergeDeferredRunnables(ResolvedTypes parent)
protected void mergeExpressionTypesIntoParent(ResolvedTypes parent)
protected TypeData prepareMerge(TypeData typeData, ITypeReferenceOwner owner)
protected void mergeLinkingCandidatesIntoParent(ResolvedTypes parent)
protected void mergeTypesIntoParent(ResolvedTypes parent)
protected void mergeTypeParametersIntoParent(ResolvedTypes parent)
protected boolean doIsResolved(java.lang.Object handle)
doIsResolved in class ResolvedTypesprotected java.util.List<TypeData> doGetTypeData(XExpression expression)
doGetTypeData in class ResolvedTypesprotected LightweightTypeReference doGetActualTypeNoDeclaration(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable, boolean ignoreReassignedTypes)
doGetActualTypeNoDeclaration in class ResolvedTypesprotected boolean isRefinedType(org.eclipse.xtext.common.types.JvmIdentifiableElement element)
isRefinedType in class ResolvedTypesprotected IApplicableCandidate doGetCandidate(XExpression featureOrConstructorCall)
doGetCandidate in class ResolvedTypesprotected org.eclipse.xtext.common.types.JvmIdentifiableElement doGetLinkedFeature(XExpression featureOrConstructorCall)
doGetLinkedFeature in class ResolvedTypespublic java.util.List<LightweightTypeReference> getExpectedExceptions()
getExpectedExceptions in class ResolvedTypesprotected LightweightTypeReference doGetDeclaredType(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable)
doGetDeclaredType in class ResolvedTypespublic java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> getDeclaredTypeParameters()
getDeclaredTypeParameters in class ResolvedTypespublic void addDeclaredTypeParameters(java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> typeParameters)
addDeclaredTypeParameters in class ResolvedTypespublic void replaceDeclaredTypeParameters(java.util.List<org.eclipse.xtext.common.types.JvmTypeParameter> typeParameters)
protected java.util.List<LightweightTypeReference> doGetActualTypeArguments(XExpression expression)
doGetActualTypeArguments in class ResolvedTypesprotected IFeatureLinkingCandidate doGetFeature(XAbstractFeatureCall featureCall)
doGetFeature in class ResolvedTypesprotected IConstructorLinkingCandidate doGetConstructor(XConstructorCall constructorCall)
doGetConstructor in class ResolvedTypespublic void reassignType(org.eclipse.xtext.common.types.JvmIdentifiableElement identifiable,
LightweightTypeReference reference)
reassignType in class ResolvedTypespublic java.util.List<org.eclipse.xtext.diagnostics.AbstractDiagnostic> getQueuedDiagnostics()
getQueuedDiagnostics in interface IResolvedTypesgetQueuedDiagnostics in class ResolvedTypespublic java.util.Collection<org.eclipse.xtext.util.IAcceptor<? super IResolvedTypes>> getDeferredLogic()
getDeferredLogic in class ResolvedTypesprotected UnboundTypeReference getUnboundTypeReference(java.lang.Object handle)
getUnboundTypeReference in class ResolvedTypesprotected void refineExpectedType(XExpression receiver, ITypeExpectation refinedExpectation)
refineExpectedType in class ResolvedTypesprotected java.util.List<LightweightBoundTypeArgument> getHints(java.lang.Object handle)
getHints in class ResolvedTypesprotected int getConformanceFlags(XExpression expression, boolean recompute)
protected void appendContent(java.lang.StringBuilder result,
java.lang.String indentation)
appendContent in class ResolvedTypesprotected LightweightTypeReference getExpectedTypeForAssociatedExpression(org.eclipse.xtext.common.types.JvmMember member, XExpression expression)
getExpectedTypeForAssociatedExpression in class ResolvedTypesprotected void markToBeInferred(XExpression expression)
markToBeInferred in class ResolvedTypesprotected java.util.Map<org.eclipse.xtext.common.types.JvmIdentifiableElement,LightweightTypeReference> getFlattenedReassignedTypes()
getFlattenedReassignedTypes in class ResolvedTypes