All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type |
Method and Description |
void |
addConstraint(ConstraintFormula constraint) |
static PsiSubstitutor |
chooseSiteSubstitutor(MethodCandidateInfo currentMethod,
JavaResolveResult resolveResult,
PsiMethod method) |
static boolean |
chooseVarargsMode(MethodCandidateInfo currentMethod,
JavaResolveResult resolveResult) |
PsiSubstitutor |
collectApplicabilityConstraints(PsiMethodReferenceExpression reference,
MethodCandidateInfo candidateInfo,
PsiType functionalInterfaceType) |
boolean |
collectDependencies(PsiType type,
java.util.Set<? super InferenceVariable> dependencies) |
static boolean |
collectDependencies(PsiType type,
java.util.Set<? super InferenceVariable> dependencies,
Function<? super PsiClassType,? extends InferenceVariable> fun) |
static PsiType |
createTypeParameterTypeWithUpperBound(PsiType upperBound,
PsiElement place) |
static PsiClass |
findParameterizationOfTheSameGenericClass(java.util.List<? extends PsiType> upperBounds,
Processor<? super Pair<PsiType,PsiType>> processor) |
PsiElement |
getContext() |
MethodCandidateInfo |
getCurrentMethod(PsiExpressionList argumentList) |
java.util.List<java.lang.String> |
getIncompatibleErrorMessages() |
ParameterTypeInferencePolicy |
getInferencePolicy() |
InferenceSessionContainer |
getInferenceSessionContainer() |
PsiSubstitutor |
getInferenceSubstitution() |
InferenceVariable |
getInferenceVariable(PsiType psiType) |
java.util.Collection<InferenceVariable> |
getInferenceVariables() |
PsiManager |
getManager() |
java.lang.String |
getPresentableText(PsiType psiType) |
PsiSubstitutor |
getRestoreNameSubstitution() |
GlobalSearchScope |
getScope() |
static PsiType |
getTargetType(PsiElement context) |
static PsiType |
getTargetTypeByParent(PsiElement context) |
static boolean |
ignoreLambdaConstraintTree(PsiExpression arg) |
PsiSubstitutor |
infer() |
PsiSubstitutor |
infer(PsiParameter [] parameters,
PsiExpression [] args,
PsiElement parent,
MethodCandidateInfo currentMethod) |
InferenceVariable[] |
initBounds(PsiElement context,
PsiSubstitutor siteSubstitutor,
PsiTypeParameter... typeParameters) |
InferenceVariable[] |
initBounds(PsiElement context,
PsiTypeParameter... typeParameters) |
void |
initExpressionConstraints(PsiParameter[] parameters,
PsiExpression[] args,
PsiMethod method,
boolean varargs) |
void |
initThrowsConstraints(PsiMethod method) |
boolean |
isErased() |
static boolean |
isFunctionalTypeMoreSpecificOnExpression(PsiType sType,
PsiType tType,
PsiExpression arg)
15.12.2.5 Choosing the Most Specific Method
"a functional interface type S is more specific than a functional interface type T for an expression exp" part
|
static boolean |
isMoreSpecific(PsiMethod m1,
PsiMethod m2,
PsiSubstitutor siteSubstitutor1,
PsiExpression[] args,
PsiElement context,
boolean varargs)
18.5.4 More Specific Method Inference
|
static boolean |
isPertinentToApplicability(PsiExpression expr,
PsiMethod method)
Definition from 15.12.2.2 Phase 1: Identify Matching Arity Methods Applicable by Subtyping Strict Invocation
An argument expression is considered pertinent to applicability for a potentially-applicable method m unless it has one of the following forms:
1) An implicitly-typed lambda expression (15.27.1).
|
boolean |
isProperType(PsiType type) |
protected PsiSubstitutor |
prepareSubstitution() |
void |
propagateVariables(InferenceSession from) |
void |
registerIncompatibleErrorMessage(java.util.Collection<InferenceVariable> variables,
java.lang.String incompatibleTypesMessage) |
void |
registerIncompatibleErrorMessage(java.lang.String incompatibleBoundsMessage) |
void |
registerReturnTypeConstraints(PsiType returnType,
PsiType targetType,
PsiElement context) |
boolean |
repeatInferencePhases() |
protected void |
resolveBounds(java.util.Collection<InferenceVariable> inferenceVariables,
PsiSubstitutor substitutor) |
protected PsiSubstitutor |
resolveSubset(java.util.Collection<InferenceVariable> vars,
PsiSubstitutor substitutor) |
void |
setCurrentMethod(MethodCandidateInfo currentMethod) |
void |
setErased() |
PsiType |
startWithFreshVars(PsiType type) |
PsiType |
substituteWithInferenceVariables(PsiType type) |