Package com.strobel.assembler.metadata
Class MethodBinder
- java.lang.Object
-
- com.strobel.assembler.metadata.MethodBinder
-
public final class MethodBinder extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classMethodBinder.AddMappingsForArgumentVisitorstatic classMethodBinder.BindResult
-
Constructor Summary
Constructors Constructor Description MethodBinder()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static booleancompareMethodSignatureAndName(MethodReference m1, MethodReference m2)private static intfindMostSpecific(java.util.List<ParameterDefinition> p1, int[] varArgOrder1, TypeReference varArgArrayType1, java.util.List<ParameterDefinition> p2, int[] varArgOrder2, TypeReference varArgArrayType2, java.util.List<TypeReference> types, java.lang.Object[] args, boolean allowAutoBoxing)private static intfindMostSpecificMethod(MethodReference m1, int[] varArgOrder1, TypeReference varArgArrayType1, MethodReference m2, int[] varArgOrder2, TypeReference varArgArrayType2, java.util.List<TypeReference> types, java.lang.Object[] args)private static intfindMostSpecificType(TypeReference c1, TypeReference c2, TypeReference t, boolean allowAutoBoxing)private static intgetHierarchyDepth(TypeReference t)static MethodBinder.BindResultselectMethod(java.util.List<? extends MethodReference> matches, java.util.List<TypeReference> types)
-
-
-
Method Detail
-
selectMethod
public static MethodBinder.BindResult selectMethod(java.util.List<? extends MethodReference> matches, java.util.List<TypeReference> types)
-
findMostSpecificMethod
private static int findMostSpecificMethod(MethodReference m1, int[] varArgOrder1, TypeReference varArgArrayType1, MethodReference m2, int[] varArgOrder2, TypeReference varArgArrayType2, java.util.List<TypeReference> types, java.lang.Object[] args)
-
findMostSpecific
private static int findMostSpecific(java.util.List<ParameterDefinition> p1, int[] varArgOrder1, TypeReference varArgArrayType1, java.util.List<ParameterDefinition> p2, int[] varArgOrder2, TypeReference varArgArrayType2, java.util.List<TypeReference> types, java.lang.Object[] args, boolean allowAutoBoxing)
-
findMostSpecificType
private static int findMostSpecificType(TypeReference c1, TypeReference c2, TypeReference t, boolean allowAutoBoxing)
-
compareMethodSignatureAndName
private static boolean compareMethodSignatureAndName(MethodReference m1, MethodReference m2)
-
getHierarchyDepth
private static int getHierarchyDepth(TypeReference t)
-
-