public final class Permit
extends java.lang.Object
| Modifier and Type | Method and Description |
|---|---|
static java.lang.Object |
get(java.lang.reflect.Field f,
java.lang.Object receiver) |
static <T> java.lang.reflect.Constructor<T> |
getConstructor(java.lang.Class<T> c,
java.lang.Class<?>... parameterTypes) |
static java.lang.reflect.Field |
getField(java.lang.Class<?> c,
java.lang.String fName) |
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> c,
java.lang.String mName,
java.lang.Class<?>... parameterTypes) |
static void |
handleReflectionDebug(java.lang.Throwable t,
@Nullable java.lang.Throwable initError) |
static java.lang.Object |
invoke(java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args) |
static java.lang.Object |
invoke(java.lang.Throwable initError,
java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args) |
static java.lang.Object |
invokeSneaky(java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args) |
static @Nullable java.lang.Object |
invokeSneaky(java.lang.Throwable initError,
java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args) |
static boolean |
isDebugReflection() |
static <T> T |
newInstance(java.lang.reflect.Constructor<T> c,
java.lang.Object... args) |
static <T> T |
newInstance(java.lang.Throwable initError,
java.lang.reflect.Constructor<T> c,
java.lang.Object... args) |
static <T> T |
newInstanceSneaky(java.lang.reflect.Constructor<T> c,
java.lang.Object... args) |
static <T> T |
newInstanceSneaky(java.lang.Throwable initError,
java.lang.reflect.Constructor<T> c,
java.lang.Object... args) |
static @Nullable java.lang.reflect.Field |
permissiveGetField(java.lang.Class<?> c,
java.lang.String fName) |
static <T> T |
permissiveReadField(java.lang.Class<T> type,
java.lang.reflect.Field f,
java.lang.Object instance) |
static void |
reportReflectionProblem(@Nullable java.lang.Throwable initError,
java.lang.String msg) |
static void |
set(java.lang.reflect.Field f,
java.lang.Object receiver,
java.lang.Object newValue) |
static <T extends java.lang.reflect.AccessibleObject> |
setAccessible(T accessor) |
static java.lang.RuntimeException |
sneakyThrow(@Nullable java.lang.Throwable t) |
public static <T extends java.lang.reflect.AccessibleObject> T setAccessible(T accessor)
public static java.lang.reflect.Method getMethod(java.lang.Class<?> c,
java.lang.String mName,
java.lang.Class<?>... parameterTypes)
throws java.lang.NoSuchMethodException
java.lang.NoSuchMethodExceptionpublic static java.lang.reflect.Field getField(java.lang.Class<?> c,
java.lang.String fName)
throws java.lang.NoSuchFieldException
java.lang.NoSuchFieldExceptionpublic static @Nullable java.lang.reflect.Field permissiveGetField(java.lang.Class<?> c,
java.lang.String fName)
public static <T> T permissiveReadField(java.lang.Class<T> type,
java.lang.reflect.Field f,
java.lang.Object instance)
public static <T> java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<T> c,
java.lang.Class<?>... parameterTypes)
throws java.lang.NoSuchMethodException
java.lang.NoSuchMethodExceptionpublic static boolean isDebugReflection()
public static void handleReflectionDebug(java.lang.Throwable t,
@Nullable java.lang.Throwable initError)
public static java.lang.Object invoke(java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionpublic static java.lang.Object invoke(java.lang.Throwable initError,
java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionpublic static java.lang.Object invokeSneaky(java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args)
public static @Nullable java.lang.Object invokeSneaky(java.lang.Throwable initError,
java.lang.reflect.Method m,
java.lang.Object receiver,
java.lang.Object... args)
public static <T> T newInstance(java.lang.reflect.Constructor<T> c,
java.lang.Object... args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.lang.InstantiationException
java.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionjava.lang.InstantiationExceptionpublic static <T> T newInstance(java.lang.Throwable initError,
java.lang.reflect.Constructor<T> c,
java.lang.Object... args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.lang.InstantiationException
java.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionjava.lang.InstantiationExceptionpublic static <T> T newInstanceSneaky(java.lang.reflect.Constructor<T> c,
java.lang.Object... args)
public static <T> T newInstanceSneaky(java.lang.Throwable initError,
java.lang.reflect.Constructor<T> c,
java.lang.Object... args)
public static java.lang.Object get(java.lang.reflect.Field f,
java.lang.Object receiver)
throws java.lang.IllegalAccessException
java.lang.IllegalAccessExceptionpublic static void set(java.lang.reflect.Field f,
java.lang.Object receiver,
java.lang.Object newValue)
throws java.lang.IllegalAccessException
java.lang.IllegalAccessExceptionpublic static void reportReflectionProblem(@Nullable java.lang.Throwable initError,
java.lang.String msg)
public static java.lang.RuntimeException sneakyThrow(@Nullable java.lang.Throwable t)