Class PropertyAccessorCollector
java.lang.Object
com.fasterxml.jackson.module.afterburner.util.DynamicPropertyAccessorBase
com.fasterxml.jackson.module.afterburner.ser.PropertyAccessorCollector
Simple collector used to keep track of properties for which code-generated
accessors are needed.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<BooleanFieldPropertyWriter>
private final List<BooleanMethodPropertyWriter>
private final List<IntFieldPropertyWriter>
private final List<IntMethodPropertyWriter>
private final List<LongFieldPropertyWriter>
private final List<LongMethodPropertyWriter>
private final List<ObjectFieldPropertyWriter>
private final List<ObjectMethodPropertyWriter>
private final List<StringFieldPropertyWriter>
private final List<StringMethodPropertyWriter>
private final Class<?>
private final String
private static final org.objectweb.asm.Type
private static final org.objectweb.asm.Type
Fields inherited from class com.fasterxml.jackson.module.afterburner.util.DynamicPropertyAccessorBase
_accessorCount, ALL_INT_CONSTS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate <T extends OptimizedBeanPropertyWriter<T>>
void_addFields
(org.objectweb.asm.ClassWriter cw, List<T> props, String methodName, org.objectweb.asm.Type returnType, int returnOpcode) private <T extends OptimizedBeanPropertyWriter<T>>
void_addFieldsUsingIf
(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) private <T extends OptimizedBeanPropertyWriter<T>>
void_addFieldsUsingSwitch
(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) private <T extends OptimizedBeanPropertyWriter<T>>
void_addGetters
(org.objectweb.asm.ClassWriter cw, List<T> props, String methodName, org.objectweb.asm.Type returnType, int returnOpcode) private <T extends OptimizedBeanPropertyWriter<T>>
void_addGettersUsingIf
(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) private <T extends OptimizedBeanPropertyWriter<T>>
void_addGettersUsingSwitch
(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) private void
_addSingleField
(org.objectweb.asm.MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode) private void
_addSingleGetter
(org.objectweb.asm.MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode) addBooleanField
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addBooleanGetter
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addIntField
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addIntGetter
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addLongField
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addLongGetter
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addObjectField
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addObjectGetter
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addStringField
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) addStringGetter
(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) findAccessor
(MyClassLoader classLoader) Class<?>
generateAccessorClass
(MyClassLoader classLoader, ClassName baseName) Methods inherited from class com.fasterxml.jackson.module.afterburner.util.DynamicPropertyAccessorBase
_add, generateException, internalClassName, isEmpty, isInterfaceMethod
-
Field Details
-
STRING_TYPE
private static final org.objectweb.asm.Type STRING_TYPE -
OBJECT_TYPE
private static final org.objectweb.asm.Type OBJECT_TYPE -
_booleanGetters
-
_intGetters
-
_longGetters
-
_stringGetters
-
_objectGetters
-
_booleanFields
-
_intFields
-
_longFields
-
_stringFields
-
_objectFields
-
beanClass
-
beanClassName
-
-
Constructor Details
-
PropertyAccessorCollector
-
-
Method Details
-
addBooleanGetter
public BooleanMethodPropertyWriter addBooleanGetter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addIntGetter
public IntMethodPropertyWriter addIntGetter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addLongGetter
public LongMethodPropertyWriter addLongGetter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addStringGetter
public StringMethodPropertyWriter addStringGetter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addObjectGetter
public ObjectMethodPropertyWriter addObjectGetter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addBooleanField
public BooleanFieldPropertyWriter addBooleanField(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addIntField
public IntFieldPropertyWriter addIntField(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addLongField
public LongFieldPropertyWriter addLongField(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addStringField
public StringFieldPropertyWriter addStringField(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
addObjectField
public ObjectFieldPropertyWriter addObjectField(com.fasterxml.jackson.databind.ser.BeanPropertyWriter bpw) -
findAccessor
-
generateAccessorClass
-
_addGetters
private <T extends OptimizedBeanPropertyWriter<T>> void _addGetters(org.objectweb.asm.ClassWriter cw, List<T> props, String methodName, org.objectweb.asm.Type returnType, int returnOpcode) -
_addFields
private <T extends OptimizedBeanPropertyWriter<T>> void _addFields(org.objectweb.asm.ClassWriter cw, List<T> props, String methodName, org.objectweb.asm.Type returnType, int returnOpcode) -
_addSingleGetter
private void _addSingleGetter(org.objectweb.asm.MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode) -
_addGettersUsingIf
private <T extends OptimizedBeanPropertyWriter<T>> void _addGettersUsingIf(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) -
_addGettersUsingSwitch
private <T extends OptimizedBeanPropertyWriter<T>> void _addGettersUsingSwitch(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) -
_addSingleField
private void _addSingleField(org.objectweb.asm.MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode) -
_addFieldsUsingIf
private <T extends OptimizedBeanPropertyWriter<T>> void _addFieldsUsingIf(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode) -
_addFieldsUsingSwitch
private <T extends OptimizedBeanPropertyWriter<T>> void _addFieldsUsingSwitch(org.objectweb.asm.MethodVisitor mv, List<T> props, int returnOpcode)
-