Class CreatorOptimizer


  • public class CreatorOptimizer
    extends DynamicPropertyAccessorBase
    Helper class that tries to generate ValueInstantiator class that calls constructors and/or factory methods directly, instead of using Reflection.
    • Field Detail

      • _valueClass

        protected final java.lang.Class<?> _valueClass
      • _originalInstantiator

        protected final com.fasterxml.jackson.databind.deser.std.StdValueInstantiator _originalInstantiator
    • Constructor Detail

      • CreatorOptimizer

        public CreatorOptimizer​(java.lang.Class<?> valueClass,
                                MyClassLoader classLoader,
                                com.fasterxml.jackson.databind.deser.std.StdValueInstantiator orig)
    • Method Detail

      • createOptimized

        public com.fasterxml.jackson.databind.deser.ValueInstantiator createOptimized()
      • createSubclass

        protected OptimizedValueInstantiator createSubclass​(java.lang.reflect.Constructor<?> ctor,
                                                            java.lang.reflect.Method factory)
      • generateOptimized

        protected byte[] generateOptimized​(ClassName baseName,
                                           java.lang.reflect.Constructor<?> ctor,
                                           java.lang.reflect.Method factory)
      • addCreator

        protected void addCreator​(org.objectweb.asm.MethodVisitor mv,
                                  java.lang.reflect.Constructor<?> ctor)
      • addCreator

        protected void addCreator​(org.objectweb.asm.MethodVisitor mv,
                                  java.lang.reflect.Method factory)