Package gw.lang.reflect
Class ITypeInfo.FIND
- java.lang.Object
-
- gw.lang.reflect.ITypeInfo.FIND
-
- Enclosing interface:
- ITypeInfo
public static class ITypeInfo.FIND extends java.lang.ObjectA general purpose class for finding methods and constructors.
-
-
Field Summary
Fields Modifier and Type Field Description private static IType[]EMPTY_TYPES
-
Constructor Summary
Constructors Constructor Description FIND()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static booleanareParamsCompatible(IType[] actualParamTypes, IType[] userParamTypes)static booleanareParamsEqual(IParameterInfo[] srcArgs, IType[] testArgs)static IConstructorInfocallableConstructor(java.util.List<? extends IConstructorInfo> constructors, IType... params)If there is a tie this method will throw an IllegalArgumentException.private static IConstructorInfocallableConstructorImpl(java.util.List<? extends IConstructorInfo> constructors, boolean strict, IType... params)static IConstructorInfocallableConstructorStrict(java.util.List<? extends IConstructorInfo> constructors, IType... params)If there is a tie this method will throw an IllegalArgumentException.static IMethodInfocallableMethod(MethodList methods, java.lang.CharSequence method, IType... params)If there is a tie this method will throw an IllegalArgumentException.private static IMethodInfocallableMethodImpl(MethodList methodList, java.lang.CharSequence method, boolean strict, IType... params)If there is a tie this method will throw an IllegalArgumentException.static IMethodInfocallableMethodStrict(MethodList methods, java.lang.CharSequence method, IType... params)If there is a tie this method will throw an IllegalArgumentException.static IConstructorInfoconstructor(java.util.List<? extends IConstructorInfo> constructors, IType... params)private static ITypegetConcreteBoundingType(IType type)static IMethodInfomethod(MethodList methodList, java.lang.CharSequence method, IType... params)private static booleantypeVarsAreFromDifferentMethods(IType methodParamType, IType testParamType)
-
-
-
Field Detail
-
EMPTY_TYPES
private static final IType[] EMPTY_TYPES
-
-
Method Detail
-
method
public static IMethodInfo method(MethodList methodList, java.lang.CharSequence method, IType... params)
-
constructor
public static IConstructorInfo constructor(java.util.List<? extends IConstructorInfo> constructors, IType... params)
-
callableMethod
public static IMethodInfo callableMethod(MethodList methods, java.lang.CharSequence method, IType... params)
If there is a tie this method will throw an IllegalArgumentException. This method is not strict, which means that clients calling this method may get back a method where the arguments must be coerced to the expected parameter tyeps. If you wish strict behavior callcallableMethodStrict(MethodList, CharSequence, IType[])
-
callableMethodStrict
public static IMethodInfo callableMethodStrict(MethodList methods, java.lang.CharSequence method, IType... params)
If there is a tie this method will throw an IllegalArgumentException. This version is strict, which means that clients calling this method do not need to do any coercion of arguments in order to invoke the IMethodInfo.
-
callableMethodImpl
private static IMethodInfo callableMethodImpl(MethodList methodList, java.lang.CharSequence method, boolean strict, IType... params)
If there is a tie this method will throw an IllegalArgumentException.
-
areParamsCompatible
private static boolean areParamsCompatible(IType[] actualParamTypes, IType[] userParamTypes)
-
callableConstructor
public static IConstructorInfo callableConstructor(java.util.List<? extends IConstructorInfo> constructors, IType... params)
If there is a tie this method will throw an IllegalArgumentException. This method is not strict, which means that clients calling this method may get back a constructor where the arguments must be coerced to the expected parameter tyeps. If you wish strict behavior callcallableConstructorStrict(java.util.List, IType[])
-
callableConstructorStrict
public static IConstructorInfo callableConstructorStrict(java.util.List<? extends IConstructorInfo> constructors, IType... params)
If there is a tie this method will throw an IllegalArgumentException. This version is strict, which means that clients calling this method do not need to do any coercion of arguments in order to invoke the IConstructorInfo.
-
callableConstructorImpl
private static IConstructorInfo callableConstructorImpl(java.util.List<? extends IConstructorInfo> constructors, boolean strict, IType... params)
-
areParamsEqual
public static boolean areParamsEqual(IParameterInfo[] srcArgs, IType[] testArgs)
-
typeVarsAreFromDifferentMethods
private static boolean typeVarsAreFromDifferentMethods(IType methodParamType, IType testParamType)
-
-