org.eclipse.xtext.common.types.util
Class TypeArgumentContextProvider
java.lang.Object
org.eclipse.xtext.common.types.util.TypeArgumentContextProvider
- Direct Known Subclasses:
- LoggingTypeArgumentDecorator, XbaseTypeArgumentContextProvider
public class TypeArgumentContextProvider
- extends java.lang.Object
- Author:
- Sebastian Zarnekow - Initial contribution and API
Method Summary |
protected java.util.Map<JvmTypeParameter,JvmTypeReference> |
createMapWithTweakedToString()
|
protected java.util.Map<JvmTypeParameter,JvmTypeReference> |
createTemporaryMap()
|
protected com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> |
createTemporaryMultimap()
|
protected ITypeArgumentContext |
getDeclaredBoundsContext(JvmExecutable executable)
|
protected ITypeArgumentContext |
getExpectedTypeContext(JvmTypeReference declaredType,
JvmTypeReference expectedType)
|
protected ITypeArgumentContext |
getExplicitArgumentContext(JvmExecutable executable,
java.util.List<JvmTypeReference> explicitTypeArguments)
|
protected ITypeArgumentContext |
getParameterContext(JvmExecutable executable,
java.util.List<JvmTypeReference> argumentTypes)
|
protected TypeArgumentContext |
getReceiverContext(JvmTypeReference receiverType)
|
ITypeArgumentContext |
getTypeArgumentContext(TypeArgumentContextProvider.Request request)
|
protected JvmTypeReference |
getWithObjectUpperBoundIfNecessary(JvmTypeReference reference)
|
protected boolean |
isRecursive(JvmTypeParameter param,
JvmTypeReference reference)
|
protected java.util.Map<JvmTypeParameter,JvmTypeReference> |
normalizedCopy(java.util.Map<JvmTypeParameter,JvmTypeReference> map)
|
protected java.util.Map<JvmTypeParameter,JvmTypeReference> |
normalizedCopy(com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> map)
|
protected void |
resolveAgainstActualType(JvmTypeReference declaredType,
JvmTypeReference actualType,
com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> result,
boolean allowWildcardResolutions,
int hint)
|
protected JvmTypeReference |
wildcardAwareGetReference(TypeArgumentContextProvider.ResolveInfo resolveInfo)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TypeArgumentContextProvider
public TypeArgumentContextProvider()
getTypeArgumentContext
public ITypeArgumentContext getTypeArgumentContext(TypeArgumentContextProvider.Request request)
getReceiverContext
protected TypeArgumentContext getReceiverContext(JvmTypeReference receiverType)
normalizedCopy
protected java.util.Map<JvmTypeParameter,JvmTypeReference> normalizedCopy(com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> map)
createMapWithTweakedToString
protected java.util.Map<JvmTypeParameter,JvmTypeReference> createMapWithTweakedToString()
wildcardAwareGetReference
protected JvmTypeReference wildcardAwareGetReference(TypeArgumentContextProvider.ResolveInfo resolveInfo)
normalizedCopy
protected java.util.Map<JvmTypeParameter,JvmTypeReference> normalizedCopy(java.util.Map<JvmTypeParameter,JvmTypeReference> map)
getExplicitArgumentContext
protected ITypeArgumentContext getExplicitArgumentContext(JvmExecutable executable,
java.util.List<JvmTypeReference> explicitTypeArguments)
getExpectedTypeContext
protected ITypeArgumentContext getExpectedTypeContext(JvmTypeReference declaredType,
JvmTypeReference expectedType)
createTemporaryMultimap
protected com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> createTemporaryMultimap()
isRecursive
protected boolean isRecursive(JvmTypeParameter param,
JvmTypeReference reference)
createTemporaryMap
protected java.util.Map<JvmTypeParameter,JvmTypeReference> createTemporaryMap()
getWithObjectUpperBoundIfNecessary
protected JvmTypeReference getWithObjectUpperBoundIfNecessary(JvmTypeReference reference)
getDeclaredBoundsContext
protected ITypeArgumentContext getDeclaredBoundsContext(JvmExecutable executable)
getParameterContext
protected ITypeArgumentContext getParameterContext(JvmExecutable executable,
java.util.List<JvmTypeReference> argumentTypes)
resolveAgainstActualType
protected void resolveAgainstActualType(JvmTypeReference declaredType,
JvmTypeReference actualType,
com.google.common.collect.Multimap<JvmTypeParameter,TypeArgumentContextProvider.ResolveInfo> result,
boolean allowWildcardResolutions,
int hint)