Package com.google.inject.internal
Class BytecodeGen
- java.lang.Object
-
- com.google.inject.internal.BytecodeGen
-
public final class BytecodeGen extends Object
Utility methods for circular proxies, faster reflection, and method interception.This class makes heavy use of
Function
andBiFunction
types when interacting with generated fast-classes and enhanced proxies. This is a deliberate design decision to avoid using Guice-specific types in the generated classes. This means generated classes can be defined in the sameClassLoader
as their host class without needing access to Guice's ownClassLoader
. (In other words it removes any need for bridgeClassLoader
s.)- Author:
- mcculls@gmail.com (Stuart McCulloch), jessewilson@google.com (Jesse Wilson)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
BytecodeGen.EnhancerBuilder
Builder of enhanced classes.
-
Field Summary
Fields Modifier and Type Field Description static String
ENHANCER_BY_GUICE_MARKER
static String
FASTCLASS_BY_GUICE_MARKER
-
Constructor Summary
Constructors Constructor Description BytecodeGen()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
isCircularProxy(Object object)
Returns true if the given object is a circular proxy.
-
-
-
Field Detail
-
ENHANCER_BY_GUICE_MARKER
public static final String ENHANCER_BY_GUICE_MARKER
- See Also:
- Constant Field Values
-
FASTCLASS_BY_GUICE_MARKER
public static final String FASTCLASS_BY_GUICE_MARKER
- See Also:
- Constant Field Values
-
-
Method Detail
-
isCircularProxy
public static boolean isCircularProxy(Object object)
Returns true if the given object is a circular proxy.
-
-