All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
| Modifier and Type |
Method and Description |
protected void |
addNestedVars(AbstractInvoke expr,
BoundSet other) |
protected void |
assignable(Instruction expr,
ReferenceType t) |
protected void |
assignable(Instruction expr,
ReferenceType resultType,
ReferenceType t,
@Nullable BoundSet polyBounds) |
protected void |
assignable(MethodDecl lambda,
ReferenceType t) |
protected void |
assignable(MethodReference mref,
ReferenceType t) |
protected void |
assignable(ReferenceType s,
ReferenceType t) |
protected void |
assignableStripWildcards(AType s,
AType t) |
protected BoundSet.VarBounds<?> |
boundsFor(BoundSet.InferenceVar var) |
protected BoundSet.VarBounds<?> |
boundsFor(TypeParameter param) |
void |
constrainAssignable(Instruction insn,
AType type) |
void |
constrainReturnAssignable(ReferenceType polyResultType) |
void |
constrainThrown(ReferenceType exType) |
protected void |
containedBy(ReferenceType s,
ReferenceType t) |
protected BoundSet.VarBounds<?> |
copyVarBounds(BoundSet.VarBounds<?> other) |
protected void |
fail(java.lang.String reason) |
protected void |
failProperSubtype(ReferenceType s,
ReferenceType t) |
protected void |
failProperTypesNotEqual(ReferenceType s,
ReferenceType t) |
static AType |
getHierarchyCompatibleType(AType targetType,
AType inputType) |
static ClassType |
getHierarchyCompatibleType(ClassType targetType,
ReferenceType compatibleType) |
static ReferenceType |
getHierarchyCompatibleType(ReferenceType targetType,
ReferenceType compatibleType) |
static java.lang.Iterable<TypeParameter> |
getInferrableTypeParams(Method method) |
static boolean |
isPoly(Method method) |
protected static boolean |
isProper(AType t) |
protected void |
lambdaParamsCanReceiveFunctionalInterfaceMethodType(java.util.List<AType> params,
java.util.List<Parameter> fParams) |
static AType |
lower(AType t) |
static ReferenceType |
lower(ReferenceType t) |
protected abstract BoundSet |
makeNestedBoundSet(java.lang.Iterable<TypeParameter> vars,
AType retType) |
static ReferenceType |
makeRepresentable(ReferenceType t) |
static boolean |
mentionsInferrableTypeParam(AType t,
Method m) |
static boolean |
mentionsTypeParam(AType t,
ITypeParameterizedMember owner) |
static boolean |
mentionsTypeParam(ReferenceType t,
ITypeParameterizedMember owner,
java.util.function.Predicate<TypeParameter> seen) |
static boolean |
mentionsTypeParamFromClassOrOuter(AType t,
ClassType clazz) |
static <B extends BoundSet> B |
monomorphicBounds(AbstractInvoke invoke,
java.util.function.BiFunction<java.lang.Iterable<TypeParameter>,AType,B> factory) |
static <B extends BoundSet> B |
newBoundSet(AbstractInvoke invoke,
java.util.function.BiFunction<java.lang.Iterable<TypeParameter>,AType,B> factory) |
protected BoundSet.VarBounds<?> |
newVarBounds() |
protected void |
retTypeAssignable(MethodDecl lambda,
ReferenceType retType) |
protected BoundSet.InferenceVarMapper |
solve() |
protected @Nullable ReferenceType |
solvePhase(BoundSet.ResolutionPhase phase,
BoundSet.VarBounds<?> bounds,
BoundSet.InferenceVarMapper solved) |
protected java.util.Map<BoundSet.InferenceVar,ReferenceType> |
solvePhases(java.util.List<BoundSet.InferenceVar> vars,
BoundSet.InferenceVarMapper solved) |
protected java.util.Map<BoundSet.InferenceVar,ReferenceType> |
solveVars(java.util.List<BoundSet.InferenceVar> vars,
BoundSet.InferenceVarMapper solved) |
protected void |
subtype(ReferenceType s,
ReferenceType t) |
static AType |
upper(AType t) |