Class BBDeserializerModifier
java.lang.Object
com.fasterxml.jackson.databind.deser.BeanDeserializerModifier
com.fasterxml.jackson.module.blackbird.deser.BBDeserializerModifier
- All Implemented Interfaces:
Serializable
public class BBDeserializerModifier
extends com.fasterxml.jackson.databind.deser.BeanDeserializerModifier
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic interfacestatic interface -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final UnaryOperator<MethodHandles.Lookup> private final Function<Class<?>, MethodHandles.Lookup> private static final MethodHandleprivate static final MethodHandleprivate static final MethodHandleprivate static final MethodHandle -
Constructor Summary
ConstructorsConstructorDescriptionBBDeserializerModifier(Function<Class<?>, MethodHandles.Lookup> lookups, UnaryOperator<MethodHandles.Lookup> accessGrant) -
Method Summary
Modifier and TypeMethodDescription(package private) static voidbooleanTrampoline(BBDeserializerModifier.ObjBooleanBiFunction thunk, Object bean, boolean value) private <T> TcreateSetter(MethodHandles.Lookup lookup, Class<T> iface, Class<?> thunkType, MethodHandle trampoline, Class<?> valueType, MethodHandle setter) protected List<OptimizedSettableBeanProperty<?>> findOptimizableProperties(MethodHandles.Lookup lookup, com.fasterxml.jackson.databind.DeserializationConfig config, Iterator<com.fasterxml.jackson.databind.deser.SettableBeanProperty> propIterator) (package private) static voidintTrampoline(BBDeserializerModifier.ObjIntBiFunction thunk, Object bean, int value) protected booleanisDefaultDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser) Helper method used to check whether given deserializer is the default deserializer implementation: this is necessary to avoid overriding other kinds of deserializers.(package private) static voidlongTrampoline(BBDeserializerModifier.ObjLongBiFunction thunk, Object bean, long value) private voidnextProperty(com.fasterxml.jackson.databind.deser.SettableBeanProperty prop, MethodHandles.Lookup lookup, ArrayList<OptimizedSettableBeanProperty<?>> newProps) (package private) static voidtrampoline(BiFunction<Object, Object, Object> thunk, Object bean, Object value) com.fasterxml.jackson.databind.deser.BeanDeserializerBuilderupdateBuilder(com.fasterxml.jackson.databind.DeserializationConfig config, com.fasterxml.jackson.databind.BeanDescription beanDesc, com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder builder) Methods inherited from class com.fasterxml.jackson.databind.deser.BeanDeserializerModifier
modifyArrayDeserializer, modifyCollectionDeserializer, modifyCollectionLikeDeserializer, modifyDeserializer, modifyEnumDeserializer, modifyKeyDeserializer, modifyMapDeserializer, modifyMapLikeDeserializer, modifyReferenceDeserializer, updateProperties
-
Field Details
-
TRAMPOLINE
-
BOOLEAN_TRAMPOLINE
-
LONG_TRAMPOLINE
-
INT_TRAMPOLINE
-
_lookups
-
_accessGrant
-
-
Constructor Details
-
BBDeserializerModifier
public BBDeserializerModifier(Function<Class<?>, MethodHandles.Lookup> lookups, UnaryOperator<MethodHandles.Lookup> accessGrant)
-
-
Method Details
-
updateBuilder
public com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder updateBuilder(com.fasterxml.jackson.databind.DeserializationConfig config, com.fasterxml.jackson.databind.BeanDescription beanDesc, com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder builder) - Overrides:
updateBuilderin classcom.fasterxml.jackson.databind.deser.BeanDeserializerModifier
-
findOptimizableProperties
protected List<OptimizedSettableBeanProperty<?>> findOptimizableProperties(MethodHandles.Lookup lookup, com.fasterxml.jackson.databind.DeserializationConfig config, Iterator<com.fasterxml.jackson.databind.deser.SettableBeanProperty> propIterator) -
nextProperty
private void nextProperty(com.fasterxml.jackson.databind.deser.SettableBeanProperty prop, MethodHandles.Lookup lookup, ArrayList<OptimizedSettableBeanProperty<?>> newProps) throws Throwable - Throws:
Throwable
-
createSetter
private <T> T createSetter(MethodHandles.Lookup lookup, Class<T> iface, Class<?> thunkType, MethodHandle trampoline, Class<?> valueType, MethodHandle setter) throws Throwable, LambdaConversionException - Throws:
ThrowableLambdaConversionException
-
isDefaultDeserializer
protected boolean isDefaultDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser) Helper method used to check whether given deserializer is the default deserializer implementation: this is necessary to avoid overriding other kinds of deserializers. -
intTrampoline
-
longTrampoline
-
booleanTrampoline
static void booleanTrampoline(BBDeserializerModifier.ObjBooleanBiFunction thunk, Object bean, boolean value) -
trampoline
-