public class InferenceSolver_c extends java.lang.Object implements InferenceSolver
Constructor and Description |
---|
InferenceSolver_c(JL5ProcedureInstance pi,
java.util.List<? extends Type> actuals,
JL5TypeSystem ts) |
Modifier and Type | Method and Description |
---|---|
boolean |
isTargetTypeVariable(Type t) |
JL5ProcedureInstance |
procedureInstance() |
protected Type |
returnType(JL5ProcedureInstance pi) |
java.util.Map<TypeVariable,ReferenceType> |
solve(Type expectedReturnType) |
JL5TypeSystem |
typeSystem() |
java.util.List<TypeVariable> |
typeVariablesToSolve() |
protected java.util.List<TypeVariable> |
typeVariablesToSolve(JL5ProcedureInstance pi) |
public InferenceSolver_c(JL5ProcedureInstance pi, java.util.List<? extends Type> actuals, JL5TypeSystem ts)
protected java.util.List<TypeVariable> typeVariablesToSolve(JL5ProcedureInstance pi)
public boolean isTargetTypeVariable(Type t)
isTargetTypeVariable
in interface InferenceSolver
public java.util.List<TypeVariable> typeVariablesToSolve()
typeVariablesToSolve
in interface InferenceSolver
public java.util.Map<TypeVariable,ReferenceType> solve(Type expectedReturnType)
solve
in interface InferenceSolver
protected Type returnType(JL5ProcedureInstance pi)
public JL5TypeSystem typeSystem()
typeSystem
in interface InferenceSolver
public JL5ProcedureInstance procedureInstance()