Package com.google.inject.internal.aop
Class HiddenClassDefiner
- java.lang.Object
-
- com.google.inject.internal.aop.HiddenClassDefiner
-
- All Implemented Interfaces:
ClassDefiner
final class HiddenClassDefiner extends java.lang.Object implements ClassDefiner
ClassDefiner
that defines classes usingMethodHandles.Lookup#defineHiddenClass
.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.reflect.Method
GET_OBJECT_METHOD
private static java.lang.Object
HIDDEN_CLASS_OPTIONS
private static java.lang.reflect.Method
HIDDEN_DEFINE_METHOD
private static java.lang.Object
THE_UNSAFE
private static java.lang.Object
TRUSTED_LOOKUP_BASE
private static java.lang.Object
TRUSTED_LOOKUP_OFFSET
-
Constructor Summary
Constructors Constructor Description HiddenClassDefiner()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.lang.Object
classOptions(java.lang.String... options)
CreatesMethodHandles.Lookup.ClassOption
array with the named options.java.lang.Class<?>
define(java.lang.Class<?> hostClass, byte[] bytecode)
Defines a new class relative to the host.
-
-
-
Field Detail
-
THE_UNSAFE
private static final java.lang.Object THE_UNSAFE
-
TRUSTED_LOOKUP_BASE
private static final java.lang.Object TRUSTED_LOOKUP_BASE
-
TRUSTED_LOOKUP_OFFSET
private static final java.lang.Object TRUSTED_LOOKUP_OFFSET
-
GET_OBJECT_METHOD
private static final java.lang.reflect.Method GET_OBJECT_METHOD
-
HIDDEN_CLASS_OPTIONS
private static final java.lang.Object HIDDEN_CLASS_OPTIONS
-
HIDDEN_DEFINE_METHOD
private static final java.lang.reflect.Method HIDDEN_DEFINE_METHOD
-
-
Method Detail
-
define
public java.lang.Class<?> define(java.lang.Class<?> hostClass, byte[] bytecode) throws java.lang.Exception
Description copied from interface:ClassDefiner
Defines a new class relative to the host.- Specified by:
define
in interfaceClassDefiner
- Throws:
java.lang.Exception
-
classOptions
private static java.lang.Object classOptions(java.lang.String... options) throws java.lang.ClassNotFoundException
CreatesMethodHandles.Lookup.ClassOption
array with the named options.- Throws:
java.lang.ClassNotFoundException
-
-