Package com.google.inject.internal.aop
Class ClassBuilding
- java.lang.Object
-
- com.google.inject.internal.aop.ClassBuilding
-
public final class ClassBuilding extends java.lang.Object
Entry-point for building enhanced classes and 'fast-class' invocation.- Author:
- mcculls@gmail.com (Stuart McCulloch)
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static BytecodeGen.EnhancerBuilder
buildEnhancerBuilder(java.lang.Class<?> hostClass)
Builder of enhancers that provide method interception via bytecode generation.static java.util.function.Function<java.lang.String,java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object>>
buildFastClass(java.lang.Class<?> hostClass)
Builds a 'fast-class' invoker that uses bytecode generation in place of reflection.static boolean
canEnhance(java.lang.reflect.Executable member)
Returns true if the given member can be enhanced using bytecode.static boolean
canFastInvoke(java.lang.reflect.Executable member)
Returns true if the given member can be fast-invoked.static java.lang.String
signature(java.lang.reflect.Constructor<?> constructor)
Minimum signature needed to disambiguate constructors from the same host class.static java.lang.String
signature(java.lang.reflect.Method method)
Minimum signature needed to disambiguate methods from the same host class.
-
-
-
Method Detail
-
signature
public static java.lang.String signature(java.lang.reflect.Constructor<?> constructor)
Minimum signature needed to disambiguate constructors from the same host class.
-
signature
public static java.lang.String signature(java.lang.reflect.Method method)
Minimum signature needed to disambiguate methods from the same host class.
-
canEnhance
public static boolean canEnhance(java.lang.reflect.Executable member)
Returns true if the given member can be enhanced using bytecode.
-
buildEnhancerBuilder
public static BytecodeGen.EnhancerBuilder buildEnhancerBuilder(java.lang.Class<?> hostClass)
Builder of enhancers that provide method interception via bytecode generation.
-
canFastInvoke
public static boolean canFastInvoke(java.lang.reflect.Executable member)
Returns true if the given member can be fast-invoked.
-
buildFastClass
public static java.util.function.Function<java.lang.String,java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object>> buildFastClass(java.lang.Class<?> hostClass)
Builds a 'fast-class' invoker that uses bytecode generation in place of reflection.
-
-