public class MetaClassHelper extends Object
| Modifiers | Name | Description |
|---|---|---|
static Object[] |
ARRAY_WITH_NULL |
|
static Object[] |
EMPTY_ARRAY |
|
static Class[] |
EMPTY_CLASS_ARRAY |
|
static Class[] |
EMPTY_TYPE_ARRAY |
| Type Params | Return Type | Name and description |
|---|---|---|
|
public static boolean |
accessibleToConstructor(Class at, Constructor constructor) |
|
public static Object |
asPrimitiveArray(List list, Class parameterType)
|
|
public static Object[] |
asWrapperArray(Object parameters, Class componentType) |
|
public static long |
calculateParameterDistance(Class[] arguments, ParameterTypes pt) |
|
public static String |
capitalize(String property)
|
|
public static Class[] |
castArgumentsToClassArray(Object[] arguments)
|
|
public static Object |
chooseEmptyMethodParams(FastArray methods)
|
|
public static Object |
chooseMostGeneralMethodWith1NullParam(FastArray methods)Warning: this method does not choose properly if multiple methods with the same distance are encountered |
|
public static boolean |
containsMatchingMethod(List list, MetaMethod method)
|
|
public static String |
convertPropertyName(String prop)Converts a String into a standard property name. |
|
public static Class[] |
convertToTypeArray(Object[] arguments)Converts array of values (incl. |
|
public static GroovyRuntimeException |
createExceptionText(String init, MetaMethod method, Object object, Object[] args, Throwable reason, boolean setReason) |
|
public static void |
doSetMetaClass(Object self, MetaClass mc)Sets the metaclass for an object, by delegating to the appropriate DefaultGroovyMethods helper method. |
|
protected static String |
getClassName(Object object) |
|
public static Closure |
getMethodPointer(Object object, String methodName)Returns a callable object for the given method name on the object. |
|
public static boolean |
isAssignableFrom(Class classToTransformTo, Class classToTransformFrom) |
|
public static boolean |
isGenericSetMethod(MetaMethod method) |
|
protected static boolean |
isSuperclass(Class clazz, Class superclass) |
|
public static void |
logMethodCall(Object object, String methodName, Object[] arguments) |
|
public static Object |
makeArray(Object obj, Class secondary, int length) |
|
public static Object |
makeCommonArray(Object[] arguments, int offset, Class fallback) |
|
protected static String |
normalizedValue(Object argument) |
|
public static boolean |
parametersAreCompatible(Class[] arguments, Class[] parameters) |
|
public static boolean |
sameClass(Class[] params, Object arg) |
|
public static boolean |
sameClasses(Class[] params, Object[] arguments, boolean weakNullCheck) |
|
public static boolean |
sameClasses(Class[] params, Object[] arguments) |
|
public static boolean |
sameClasses(Class[] params) |
|
public static boolean |
sameClasses(Class[] params, Object arg1) |
|
public static boolean |
sameClasses(Class[] params, Object arg1, Object arg2) |
|
public static boolean |
sameClasses(Class[] params, Object arg1, Object arg2, Object arg3) |
|
public static boolean |
sameClasses(Class[] params, Object arg1, Object arg2, Object arg3, Object arg4) |
|
protected static String |
shortName(Object object) |
|
public static void |
unwrap(Object[] arguments) |
|
public static Class[] |
wrap(Class[] classes) |
list - the original listparameterType - the resulting array type
arguments - an array of classes, values, or nulls
methods - the methods to choose fromWarning: this method does not choose properly if multiple methods with the same distance are encountered
methods - the methods to choose from
list - a list of MetaMethodsmethod - the MetaMethod of interestConverts a String into a standard property name.
prop - the original name Converts array of values (incl. null) to their respective types.
arguments - the argumentsSets the metaclass for an object, by delegating to the appropriate DefaultGroovyMethods helper method. This method was introduced as a breaking change in 2.0 to solve rare cases of stack overflow. See GROOVY-5285. The method is named doSetMetaClass in order to prevent misuses. Do not use this method directly unless you know what you do.
self - the object for which to set the metaclassmc - the metaclassReturns a callable object for the given method name on the object. The object acts like a Closure in that it can be called, like a closure and passed around - though really it's a method pointer, not a closure per se.
object - the object containing the methodmethodName - the method of interest