public class CreatorOptimizer extends DynamicPropertyAccessorBase
ValueInstantiator
class
that calls constructors and/or factory methods directly, instead
of using Reflection.Modifier and Type | Field and Description |
---|---|
protected MyClassLoader |
_classLoader |
protected com.fasterxml.jackson.databind.deser.std.StdValueInstantiator |
_originalInstantiator |
protected java.lang.Class<?> |
_valueClass |
_accessorCount, ALL_INT_CONSTS
Constructor and Description |
---|
CreatorOptimizer(java.lang.Class<?> valueClass,
MyClassLoader classLoader,
com.fasterxml.jackson.databind.deser.std.StdValueInstantiator orig) |
Modifier and Type | Method and Description |
---|---|
protected void |
addCreator(org.objectweb.asm.MethodVisitor mv,
java.lang.reflect.Constructor<?> ctor) |
protected void |
addCreator(org.objectweb.asm.MethodVisitor mv,
java.lang.reflect.Method factory) |
com.fasterxml.jackson.databind.deser.ValueInstantiator |
createOptimized() |
protected OptimizedValueInstantiator |
createSubclass(java.lang.reflect.Constructor<?> ctor,
java.lang.reflect.Method factory) |
protected byte[] |
generateOptimized(ClassName baseName,
java.lang.reflect.Constructor<?> ctor,
java.lang.reflect.Method factory) |
_add, generateException, internalClassName, isEmpty, isInterfaceMethod
protected final java.lang.Class<?> _valueClass
protected final MyClassLoader _classLoader
protected final com.fasterxml.jackson.databind.deser.std.StdValueInstantiator _originalInstantiator
public CreatorOptimizer(java.lang.Class<?> valueClass, MyClassLoader classLoader, com.fasterxml.jackson.databind.deser.std.StdValueInstantiator orig)
public com.fasterxml.jackson.databind.deser.ValueInstantiator createOptimized()
protected OptimizedValueInstantiator createSubclass(java.lang.reflect.Constructor<?> ctor, java.lang.reflect.Method factory)
protected byte[] generateOptimized(ClassName baseName, java.lang.reflect.Constructor<?> ctor, java.lang.reflect.Method factory)
protected void addCreator(org.objectweb.asm.MethodVisitor mv, java.lang.reflect.Constructor<?> ctor)
protected void addCreator(org.objectweb.asm.MethodVisitor mv, java.lang.reflect.Method factory)