public class TypeHintBoundSet extends BoundSet
BoundSet.InferenceVar, BoundSet.InferenceVarMapper, BoundSet.ResolutionPhase, BoundSet.ResolveFailedException, BoundSet.SimpleVarBounds, BoundSet.VarBounds<T>bounds, failure, hasRawArgs, infVarRetType, nestedVars, vars| Constructor and Description |
|---|
TypeHintBoundSet(java.lang.Iterable<TypeParameter> typeParameters,
AType retType) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
assignable(Instruction expr,
ReferenceType t) |
protected void |
assignable(MethodDecl lambda,
ReferenceType t) |
protected void |
assignable(MethodReference mref,
ReferenceType t) |
protected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds |
boundsFor(BoundSet.InferenceVar var) |
protected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds |
boundsFor(TypeParameter param) |
protected void |
failProperSubtype(ReferenceType s,
ReferenceType t) |
protected void |
failProperTypesNotEqual(ReferenceType s,
ReferenceType t) |
protected BoundSet |
makeNestedBoundSet(java.lang.Iterable<TypeParameter> vars,
AType retType) |
protected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds |
newVarBounds() |
protected void |
retTypeAssignable(MethodDecl lambda,
ReferenceType retType) |
protected BoundSet.InferenceVarMapper |
solve() |
@Nullable ReferenceType |
solveAndApplyTo(ReferenceType type) |
protected @Nullable ReferenceType |
solvePhase(BoundSet.ResolutionPhase phase,
BoundSet.VarBounds<?> bounds,
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) |
addNestedVars, assignable, assignable, assignableStripWildcards, constrainAssignable, constrainReturnAssignable, constrainThrown, containedBy, copyVarBounds, fail, getHierarchyCompatibleType, getHierarchyCompatibleType, getHierarchyCompatibleType, getInferrableTypeParams, isPoly, isProper, lambdaParamsCanReceiveFunctionalInterfaceMethodType, lower, lower, makeRepresentable, mentionsInferrableTypeParam, mentionsTypeParam, mentionsTypeParam, mentionsTypeParamFromClassOrOuter, monomorphicBounds, newBoundSet, solvePhases, upperpublic TypeHintBoundSet(java.lang.Iterable<TypeParameter> typeParameters, AType retType)
protected BoundSet.InferenceVarMapper solve()
protected void assignable(Instruction expr, ReferenceType t)
assignable in class BoundSetprotected void subtype(ReferenceType s, ReferenceType t)
protected void retTypeAssignable(MethodDecl lambda, ReferenceType retType)
retTypeAssignable in class BoundSetprotected void assignable(MethodDecl lambda, ReferenceType t)
assignable in class BoundSetprotected void assignable(MethodReference mref, ReferenceType t)
assignable in class BoundSetprotected void failProperSubtype(ReferenceType s, ReferenceType t)
failProperSubtype in class BoundSetprotected void failProperTypesNotEqual(ReferenceType s, ReferenceType t)
failProperTypesNotEqual in class BoundSetprotected java.util.Map<BoundSet.InferenceVar,ReferenceType> solveVars(java.util.List<BoundSet.InferenceVar> vars, BoundSet.InferenceVarMapper solved)
@Nullable protected @Nullable ReferenceType solvePhase(BoundSet.ResolutionPhase phase, BoundSet.VarBounds<?> bounds, BoundSet.InferenceVarMapper solved)
solvePhase in class BoundSet@Nullable public @Nullable ReferenceType solveAndApplyTo(ReferenceType type)
protected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds newVarBounds()
newVarBounds in class BoundSetprotected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds boundsFor(BoundSet.InferenceVar var)
protected net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.TypeHintBoundSet.TypeHintVarBounds boundsFor(TypeParameter param)
protected BoundSet makeNestedBoundSet(java.lang.Iterable<TypeParameter> vars, AType retType)
makeNestedBoundSet in class BoundSet