public class OverloadMethodSet
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private static class |
OverloadMethodSet.MethodData |
Modifier and Type | Field and Description |
---|---|
private OverloadMethodSet.MethodData |
actualPrototype |
private java.util.List<OverloadMethodSet.MethodData> |
allPrototypes |
private ClassFile |
classFile |
Modifier | Constructor and Description |
---|---|
|
OverloadMethodSet(ClassFile classFile,
MethodPrototype actualPrototype,
java.util.List<MethodPrototype> allPrototypes) |
private |
OverloadMethodSet(ClassFile classFile,
OverloadMethodSet.MethodData actualPrototype,
java.util.List<OverloadMethodSet.MethodData> allPrototypes) |
Modifier and Type | Method and Description |
---|---|
private boolean |
callsCorrectApproxObjMethod(Expression newArg,
JavaTypeInstance actual,
int idx,
GenericTypeBinder gtb) |
private boolean |
callsCorrectApproxRawMethod(JavaTypeInstance actual,
int idx,
GenericTypeBinder gtb) |
boolean |
callsCorrectEntireMethod(java.util.List<Expression> args,
GenericTypeBinder gtb) |
boolean |
callsCorrectMethod(Expression newArg,
int idx,
GenericTypeBinder gtb) |
JavaTypeInstance |
getArgType(int idx,
JavaTypeInstance used) |
java.util.List<JavaTypeInstance> |
getPossibleArgTypes(int idx,
JavaTypeInstance used) |
int |
size() |
OverloadMethodSet |
specialiseTo(JavaGenericRefTypeInstance type) |
private JavaTypeInstance |
unbox(JavaTypeInstance actual) |
private final ClassFile classFile
private final OverloadMethodSet.MethodData actualPrototype
private final java.util.List<OverloadMethodSet.MethodData> allPrototypes
public OverloadMethodSet(ClassFile classFile, MethodPrototype actualPrototype, java.util.List<MethodPrototype> allPrototypes)
private OverloadMethodSet(ClassFile classFile, OverloadMethodSet.MethodData actualPrototype, java.util.List<OverloadMethodSet.MethodData> allPrototypes)
public OverloadMethodSet specialiseTo(JavaGenericRefTypeInstance type)
public JavaTypeInstance getArgType(int idx, JavaTypeInstance used)
public java.util.List<JavaTypeInstance> getPossibleArgTypes(int idx, JavaTypeInstance used)
public boolean callsCorrectEntireMethod(java.util.List<Expression> args, GenericTypeBinder gtb)
public int size()
private JavaTypeInstance unbox(JavaTypeInstance actual)
public boolean callsCorrectMethod(Expression newArg, int idx, GenericTypeBinder gtb)
private boolean callsCorrectApproxRawMethod(JavaTypeInstance actual, int idx, GenericTypeBinder gtb)
private boolean callsCorrectApproxObjMethod(Expression newArg, JavaTypeInstance actual, int idx, GenericTypeBinder gtb)