public class com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<T extends java.time.temporal.Temporal> extends com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
super_class: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final java.util.regex.Pattern ISO8601_UTC_ZERO_OFFSET_SUFFIX_REGEX;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<java.time.Instant> INSTANT;
descriptor: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<Ljava/time/Instant;>;
public static final com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<java.time.OffsetDateTime> OFFSET_DATE_TIME;
descriptor: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<Ljava/time/OffsetDateTime;>;
public static final com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<java.time.ZonedDateTime> ZONED_DATE_TIME;
descriptor: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<Ljava/time/ZonedDateTime;>;
protected final java.util.function.Function<com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments, T> fromMilliseconds;
descriptor: Ljava/util/function/Function;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;TT;>;
protected final java.util.function.Function<com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments, T> fromNanoseconds;
descriptor: Ljava/util/function/Function;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;TT;>;
protected final java.util.function.Function<java.time.temporal.TemporalAccessor, T> parsedToValue;
descriptor: Ljava/util/function/Function;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/function/Function<Ljava/time/temporal/TemporalAccessor;TT;>;
protected final java.util.function.BiFunction<T, java.time.ZoneId, T> adjust;
descriptor: Ljava/util/function/BiFunction;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/function/BiFunction<TT;Ljava/time/ZoneId;TT;>;
protected final boolean replaceZeroOffsetAsZ;
descriptor: Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.lang.Boolean _adjustToContextTZOverride;
descriptor: Ljava/lang/Boolean;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=0, args_size=0
0: ldc "\\+00:?(00)?$"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.ISO8601_UTC_ZERO_OFFSET_SUFFIX_REGEX:Ljava/util/regex/Pattern;
1: new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
dup
2: ldc Ljava/time/Instant;
getstatic java.time.format.DateTimeFormatter.ISO_INSTANT:Ljava/time/format/DateTimeFormatter;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/time/Instant.from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/Instant; (6)
(Ljava/time/temporal/TemporalAccessor;)Ljava/time/Instant;
4: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$1(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/Instant; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/Instant;
5: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$2(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/Instant; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/Instant;
6: aconst_null
7: iconst_1
8: invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Z)V
putstatic com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.INSTANT:Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
9: new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
dup
10: ldc Ljava/time/OffsetDateTime;
getstatic java.time.format.DateTimeFormatter.ISO_OFFSET_DATE_TIME:Ljava/time/format/DateTimeFormatter;
11: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/time/OffsetDateTime.from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/OffsetDateTime; (6)
(Ljava/time/temporal/TemporalAccessor;)Ljava/time/OffsetDateTime;
12: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$4(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/OffsetDateTime; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/OffsetDateTime;
13: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$5(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/OffsetDateTime; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/OffsetDateTime;
14: invokedynamic apply()Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$6(Ljava/time/OffsetDateTime;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime; (6)
(Ljava/time/OffsetDateTime;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime;
15: iconst_1
16: invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Z)V
putstatic com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.OFFSET_DATE_TIME:Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
17: new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
dup
18: ldc Ljava/time/ZonedDateTime;
getstatic java.time.format.DateTimeFormatter.ISO_ZONED_DATE_TIME:Ljava/time/format/DateTimeFormatter;
19: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/time/ZonedDateTime.from(Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZonedDateTime; (6)
(Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZonedDateTime;
20: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$8(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/ZonedDateTime; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/ZonedDateTime;
21: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$9(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/ZonedDateTime; (6)
(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/ZonedDateTime;
22: invokedynamic apply()Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
java/time/ZonedDateTime.withZoneSameInstant(Ljava/time/ZoneId;)Ljava/time/ZonedDateTime; (5)
(Ljava/time/ZonedDateTime;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime;
23: iconst_0
24: invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Z)V
putstatic com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.ZONED_DATE_TIME:Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
25: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.lang.Class<T>, java.time.format.DateTimeFormatter, java.util.function.Function<java.time.temporal.TemporalAccessor, T>, java.util.function.Function<com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments, T>, java.util.function.Function<com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments, T>, java.util.function.BiFunction<T, java.time.ZoneId, T>, );
descriptor: (Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 1
aload 2
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;)V
1: aload 0
aload 3
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
2: aload 0
aload 4
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
3: aload 0
aload 5
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
4: aload 0
aload 6
ifnonnull 5
invokedynamic apply()Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$11(Ljava/time/temporal/Temporal;Ljava/time/ZoneId;)Ljava/time/temporal/Temporal; (6)
(Ljava/time/temporal/Temporal;Ljava/time/ZoneId;)Ljava/time/temporal/Temporal;
goto 6
StackMap locals: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer java.lang.Class java.time.format.DateTimeFormatter java.util.function.Function java.util.function.Function java.util.function.Function java.util.function.BiFunction int
StackMap stack: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
5: aload 6
StackMap locals: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer java.lang.Class java.time.format.DateTimeFormatter java.util.function.Function java.util.function.Function java.util.function.Function java.util.function.BiFunction int
StackMap stack: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer java.util.function.BiFunction
6: putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
7: aload 0
iload 7
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZ:Z
8: aload 0
aconst_null
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
9: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 10 1 supportedType Ljava/lang/Class<TT;>;
0 10 2 formatter Ljava/time/format/DateTimeFormatter;
0 10 3 parsedToValue Ljava/util/function/Function<Ljava/time/temporal/TemporalAccessor;TT;>;
0 10 4 fromMilliseconds Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;TT;>;
0 10 5 fromNanoseconds Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;TT;>;
0 10 6 adjust Ljava/util/function/BiFunction<TT;Ljava/time/ZoneId;TT;>;
0 10 7 replaceZeroOffsetAsZ Z
Signature: (Ljava/lang/Class<TT;>;Ljava/time/format/DateTimeFormatter;Ljava/util/function/Function<Ljava/time/temporal/TemporalAccessor;TT;>;Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;TT;>;Ljava/util/function/Function<Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;TT;>;Ljava/util/function/BiFunction<TT;Ljava/time/ZoneId;TT;>;Z)V
MethodParameters:
Name Flags
supportedType
formatter
parsedToValue
fromMilliseconds
fromNanoseconds
adjust
replaceZeroOffsetAsZ
protected void <init>(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<T>, java.time.format.DateTimeFormatter);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;Ljava/time/format/DateTimeFormatter;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.handledType:()Ljava/lang/Class;
aload 2
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;)V
1: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
2: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
3: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
4: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
5: aload 0
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
getstatic java.time.format.DateTimeFormatter.ISO_INSTANT:Ljava/time/format/DateTimeFormatter;
if_acmpne 6
iconst_1
goto 7
StackMap locals: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer java.time.format.DateTimeFormatter
StackMap stack: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
6: iconst_0
StackMap locals: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer java.time.format.DateTimeFormatter
StackMap stack: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer int
7: putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZ:Z
8: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 10 1 base Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 10 2 f Ljava/time/format/DateTimeFormatter;
Signature: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;Ljava/time/format/DateTimeFormatter;)V
MethodParameters:
Name Flags
base
f
protected void <init>(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<T>, java.lang.Boolean);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;Ljava/lang/Boolean;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.handledType:()Ljava/lang/Class;
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase.<init>:(Ljava/lang/Class;Ljava/time/format/DateTimeFormatter;)V
1: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
2: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
3: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
4: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
5: aload 0
aload 1
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZ:Z
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZ:Z
6: aload 0
aload 2
putfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 8 1 base Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 8 2 adjustToContextTimezoneOverride Ljava/lang/Boolean;
Signature: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;Ljava/lang/Boolean;)V
MethodParameters:
Name Flags
base
adjustToContextTimezoneOverride
protected com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<T> withDateFormat(java.time.format.DateTimeFormatter);
descriptor: (Ljava/time/format/DateTimeFormatter;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
if_acmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
dup
aload 0
aload 1
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.<init>:(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;Ljava/time/format/DateTimeFormatter;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 3 1 dtf Ljava/time/format/DateTimeFormatter;
Signature: (Ljava/time/format/DateTimeFormatter;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
MethodParameters:
Name Flags
dtf
protected com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<T> withLeniency(java.lang.Boolean);
descriptor: (Ljava/lang/Boolean;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 1 1 leniency Ljava/lang/Boolean;
Signature: (Ljava/lang/Boolean;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
MethodParameters:
Name Flags
leniency
public T deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/temporal/Temporal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getCurrentTokenId:()I
tableswitch { // 3 - 12
3: 28
4: 29
5: 29
6: 3
7: 2
8: 1
9: 29
10: 29
11: 29
12: 27
default: 29
}
1: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getDecimalValue:()Ljava/math/BigDecimal;
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._fromDecimal:(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/math/BigDecimal;)Ljava/time/temporal/Temporal;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getLongValue:()J
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._fromLong:(Lcom/fasterxml/jackson/databind/DeserializationContext;J)Ljava/time/temporal/Temporal;
areturn
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getText:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 3
start local 3 4: aload 3
invokevirtual java.lang.String.length:()I
ifne 6
5: aconst_null
areturn
6: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
getstatic java.time.format.DateTimeFormatter.ISO_INSTANT:Ljava/time/format/DateTimeFormatter;
if_acmpeq 9
7: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
getstatic java.time.format.DateTimeFormatter.ISO_OFFSET_DATE_TIME:Ljava/time/format/DateTimeFormatter;
if_acmpeq 9
8: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
getstatic java.time.format.DateTimeFormatter.ISO_ZONED_DATE_TIME:Ljava/time/format/DateTimeFormatter;
if_acmpne 19
9: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._countPeriods:(Ljava/lang/String;)I
istore 4
start local 4 10: iload 4
iflt 18
11: iload 4
ifne 14
12: aload 0
aload 2
aload 3
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._fromLong:(Lcom/fasterxml/jackson/databind/DeserializationContext;J)Ljava/time/temporal/Temporal;
13: areturn
14: StackMap locals: int
StackMap stack:
iload 4
iconst_1
if_icmpne 18
15: aload 0
aload 2
new java.math.BigDecimal
dup
aload 3
invokespecial java.math.BigDecimal.<init>:(Ljava/lang/String;)V
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._fromDecimal:(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/math/BigDecimal;)Ljava/time/temporal/Temporal;
16: areturn
17: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
18: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZIfNecessary:(Ljava/lang/String;)Ljava/lang/String;
astore 3
end local 4 19: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._formatter:Ljava/time/format/DateTimeFormatter;
aload 3
invokevirtual java.time.format.DateTimeFormatter.parse:(Ljava/lang/CharSequence;)Ljava/time/temporal/TemporalAccessor;
astore 5
start local 5 20: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.parsedToValue:Ljava/util/function/Function;
aload 5
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
astore 4
start local 4 21: aload 0
aload 2
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.shouldAdjustToContextTimezone:(Lcom/fasterxml/jackson/databind/DeserializationContext;)Z
ifeq 26
22: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.adjust:Ljava/util/function/BiFunction;
aload 4
aload 0
aload 2
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.getZone:(Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/ZoneId;
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
23: areturn
end local 5 end local 4 24: StackMap locals:
StackMap stack: java.time.DateTimeException
astore 5
start local 5 25: aload 0
aload 2
aload 5
aload 3
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._handleDateTimeException:(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/time/DateTimeException;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
astore 4
end local 5 start local 4 26: StackMap locals: java.time.temporal.Temporal
StackMap stack:
aload 4
areturn
end local 4 end local 3 27: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getEmbeddedObject:()Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
28: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._deserializeFromArray:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
29: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
iconst_3
anewarray com.fasterxml.jackson.core.JsonToken
dup
iconst_0
getstatic com.fasterxml.jackson.core.JsonToken.VALUE_STRING:Lcom/fasterxml/jackson/core/JsonToken;
aastore
dup
iconst_1
30: getstatic com.fasterxml.jackson.core.JsonToken.VALUE_NUMBER_INT:Lcom/fasterxml/jackson/core/JsonToken;
aastore
dup
iconst_2
getstatic com.fasterxml.jackson.core.JsonToken.VALUE_NUMBER_FLOAT:Lcom/fasterxml/jackson/core/JsonToken;
aastore
31: invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._handleUnexpectedToken:(Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/core/JsonParser;[Lcom/fasterxml/jackson/core/JsonToken;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 32 1 parser Lcom/fasterxml/jackson/core/JsonParser;
0 32 2 context Lcom/fasterxml/jackson/databind/DeserializationContext;
4 27 3 string Ljava/lang/String;
10 19 4 dots I
21 24 4 value TT;
26 27 4 value TT;
20 24 5 acc Ljava/time/temporal/TemporalAccessor;
25 26 5 e Ljava/time/DateTimeException;
Exception table:
from to target type
11 13 17 Class java.lang.NumberFormatException
14 16 17 Class java.lang.NumberFormatException
19 23 24 Class java.time.DateTimeException
Exceptions:
throws java.io.IOException
Signature: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)TT;
MethodParameters:
Name Flags
parser
context
public com.fasterxml.jackson.databind.JsonDeserializer<T> createContextual(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.BeanProperty);
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/BeanProperty;)Lcom/fasterxml/jackson/databind/JsonDeserializer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase.createContextual:(Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/BeanProperty;)Lcom/fasterxml/jackson/databind/JsonDeserializer;
checkcast com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
1: astore 3
start local 3 2: aload 3
aload 0
if_acmpeq 6
3: aload 0
aload 1
aload 2
aload 0
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.handledType:()Ljava/lang/Class;
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.findFormatOverrides:(Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/BeanProperty;Ljava/lang/Class;)Lcom/fasterxml/jackson/annotation/JsonFormat$Value;
astore 4
start local 4 4: aload 4
ifnull 6
5: new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
dup
aload 3
aload 4
getstatic com.fasterxml.jackson.annotation.JsonFormat$Feature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE:Lcom/fasterxml/jackson/annotation/JsonFormat$Feature;
invokevirtual com.fasterxml.jackson.annotation.JsonFormat$Value.getFeature:(Lcom/fasterxml/jackson/annotation/JsonFormat$Feature;)Ljava/lang/Boolean;
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.<init>:(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;Ljava/lang/Boolean;)V
areturn
end local 4 6: StackMap locals: com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
StackMap stack:
aload 0
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 7 1 ctxt Lcom/fasterxml/jackson/databind/DeserializationContext;
0 7 2 property Lcom/fasterxml/jackson/databind/BeanProperty;
2 7 3 deserializer Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
4 6 4 val Lcom/fasterxml/jackson/annotation/JsonFormat$Value;
Exceptions:
throws com.fasterxml.jackson.databind.JsonMappingException
Signature: (Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/BeanProperty;)Lcom/fasterxml/jackson/databind/JsonDeserializer<TT;>;
MethodParameters:
Name Flags
ctxt
property
protected boolean shouldAdjustToContextTimezone(com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
ifnull 1
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._adjustToContextTZOverride:Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
goto 2
1: StackMap locals:
StackMap stack:
aload 1
getstatic com.fasterxml.jackson.databind.DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE:Lcom/fasterxml/jackson/databind/DeserializationFeature;
invokevirtual com.fasterxml.jackson.databind.DeserializationContext.isEnabled:(Lcom/fasterxml/jackson/databind/DeserializationFeature;)Z
2: StackMap locals:
StackMap stack: int
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 3 1 context Lcom/fasterxml/jackson/databind/DeserializationContext;
MethodParameters:
Name Flags
context
protected int _countPeriods(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 1
invokevirtual java.lang.String.length:()I
istore 4
start local 4 3: goto 11
4: StackMap locals: int int int
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 5: iload 5
bipush 48
if_icmplt 6
iload 5
bipush 57
if_icmple 10
6: StackMap locals: int
StackMap stack:
iload 5
bipush 46
if_icmpne 9
7: iinc 2 1
8: goto 10
9: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 5 10: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
iload 4
if_icmplt 4
end local 4 end local 3 12: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 13 1 str Ljava/lang/String;
1 13 2 commas I
2 12 3 i I
3 12 4 end I
5 10 5 ch I
MethodParameters:
Name Flags
str
protected T _fromLong(com.fasterxml.jackson.databind.DeserializationContext, );
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;J)Ljava/time/temporal/Temporal;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getstatic com.fasterxml.jackson.databind.DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS:Lcom/fasterxml/jackson/databind/DeserializationFeature;
invokevirtual com.fasterxml.jackson.databind.DeserializationContext.isEnabled:(Lcom/fasterxml/jackson/databind/DeserializationFeature;)Z
ifeq 4
1: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments
dup
2: lload 2
iconst_0
aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.getZone:(Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/ZoneId;
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.<init>:(JILjava/time/ZoneId;)V
3: invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromMilliseconds:Ljava/util/function/Function;
new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments
dup
5: lload 2
aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.getZone:(Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/ZoneId;
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.<init>:(JLjava/time/ZoneId;)V
6: invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 7 1 context Lcom/fasterxml/jackson/databind/DeserializationContext;
0 7 2 timestamp J
Signature: (Lcom/fasterxml/jackson/databind/DeserializationContext;J)TT;
MethodParameters:
Name Flags
context
timestamp
protected T _fromDecimal(com.fasterxml.jackson.databind.DeserializationContext, java.math.BigDecimal);
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/math/BigDecimal;)Ljava/time/temporal/Temporal;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
invokedynamic apply(Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
com/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer.lambda$12(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/Long;Ljava/lang/Integer;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments; (7)
(Ljava/lang/Long;Ljava/lang/Integer;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
invokestatic com.fasterxml.jackson.datatype.jsr310.DecimalUtils.extractSecondsAndNanos:(Ljava/math/BigDecimal;Ljava/util/function/BiFunction;)Ljava/lang/Object;
checkcast com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments
1: astore 3
start local 3 2: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.fromNanoseconds:Ljava/util/function/Function;
aload 3
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.temporal.Temporal
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 3 1 context Lcom/fasterxml/jackson/databind/DeserializationContext;
0 3 2 value Ljava/math/BigDecimal;
2 3 3 args Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
Signature: (Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/math/BigDecimal;)TT;
MethodParameters:
Name Flags
context
value
private java.time.ZoneId getZone(com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/ZoneId;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer._valueClass:Ljava/lang/Class;
ldc Ljava/time/Instant;
if_acmpne 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: aload 1
invokevirtual com.fasterxml.jackson.databind.DeserializationContext.getTimeZone:()Ljava/util/TimeZone;
invokevirtual java.util.TimeZone.toZoneId:()Ljava/time/ZoneId;
StackMap locals:
StackMap stack: java.time.ZoneId
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 3 1 context Lcom/fasterxml/jackson/databind/DeserializationContext;
MethodParameters:
Name Flags
context
private java.lang.String replaceZeroOffsetAsZIfNecessary(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.replaceZeroOffsetAsZ:Z
ifeq 2
1: getstatic com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.ISO8601_UTC_ZERO_OFFSET_SUFFIX_REGEX:Ljava/util/regex/Pattern;
aload 1
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
ldc "Z"
invokevirtual java.util.regex.Matcher.replaceFirst:(Ljava/lang/String;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 3 1 text Ljava/lang/String;
MethodParameters:
Name Flags
text
public java.lang.Object deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.deserialize:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/temporal/Temporal;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException, com.fasterxml.jackson.core.JsonProcessingException
public java.lang.Object deserializeWithType(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.jsontype.TypeDeserializer);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/jsontype/TypeDeserializer;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase.deserializeWithType:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/jsontype/TypeDeserializer;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
protected com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase withLeniency(java.lang.Boolean);
descriptor: (Ljava/lang/Boolean;)Lcom/fasterxml/jackson/datatype/jsr310/deser/JSR310DateTimeDeserializerBase;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.withLeniency:(Ljava/lang/Boolean;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase withDateFormat(java.time.format.DateTimeFormatter);
descriptor: (Ljava/time/format/DateTimeFormatter;)Lcom/fasterxml/jackson/datatype/jsr310/deser/JSR310DateTimeDeserializerBase;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.withDateFormat:(Ljava/time/format/DateTimeFormatter;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.time.Instant lambda$1(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/Instant;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.value:J
invokestatic java.time.Instant.ofEpochMilli:(J)Ljava/time/Instant;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;
private static java.time.Instant lambda$2(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/Instant;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.integer:J
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.fraction:I
i2l
invokestatic java.time.Instant.ofEpochSecond:(JJ)Ljava/time/Instant;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
private static java.time.OffsetDateTime lambda$4(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/OffsetDateTime;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.value:J
invokestatic java.time.Instant.ofEpochMilli:(J)Ljava/time/Instant;
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.zoneId:Ljava/time/ZoneId;
invokestatic java.time.OffsetDateTime.ofInstant:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;
private static java.time.OffsetDateTime lambda$5(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/OffsetDateTime;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.integer:J
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.fraction:I
i2l
invokestatic java.time.Instant.ofEpochSecond:(JJ)Ljava/time/Instant;
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.zoneId:Ljava/time/ZoneId;
invokestatic java.time.OffsetDateTime.ofInstant:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
private static java.time.OffsetDateTime lambda$6(java.time.OffsetDateTime, java.time.ZoneId);
descriptor: (Ljava/time/OffsetDateTime;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.time.ZoneId.getRules:()Ljava/time/zone/ZoneRules;
aload 0
invokevirtual java.time.OffsetDateTime.toLocalDateTime:()Ljava/time/LocalDateTime;
invokevirtual java.time.zone.ZoneRules.getOffset:(Ljava/time/LocalDateTime;)Ljava/time/ZoneOffset;
invokevirtual java.time.OffsetDateTime.withOffsetSameInstant:(Ljava/time/ZoneOffset;)Ljava/time/OffsetDateTime;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 d Ljava/time/OffsetDateTime;
0 1 1 z Ljava/time/ZoneId;
private static java.time.ZonedDateTime lambda$8(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;)Ljava/time/ZonedDateTime;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.value:J
invokestatic java.time.Instant.ofEpochMilli:(J)Ljava/time/Instant;
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments.zoneId:Ljava/time/ZoneId;
invokestatic java.time.ZonedDateTime.ofInstant:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromIntegerArguments;
private static java.time.ZonedDateTime lambda$9(com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments);
descriptor: (Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;)Ljava/time/ZonedDateTime;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.integer:J
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.fraction:I
i2l
invokestatic java.time.Instant.ofEpochSecond:(JJ)Ljava/time/Instant;
aload 0
getfield com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.zoneId:Ljava/time/ZoneId;
invokestatic java.time.ZonedDateTime.ofInstant:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
private static java.time.temporal.Temporal lambda$11(java.time.temporal.Temporal, java.time.ZoneId);
descriptor: (Ljava/time/temporal/Temporal;Ljava/time/ZoneId;)Ljava/time/temporal/Temporal;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 d TT;
0 1 1 z Ljava/time/ZoneId;
private com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments lambda$12(com.fasterxml.jackson.databind.DeserializationContext, java.lang.Long, java.lang.Integer);
descriptor: (Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/Long;Ljava/lang/Integer;)Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer$FromDecimalArguments;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 2 start local 3 0: new com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments
dup
aload 2
invokevirtual java.lang.Long.longValue:()J
aload 3
invokevirtual java.lang.Integer.intValue:()I
aload 0
aload 1
invokevirtual com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.getZone:(Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/time/ZoneId;
invokespecial com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments.<init>:(JILjava/time/ZoneId;)V
areturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/datatype/jsr310/deser/InstantDeserializer<TT;>;
0 1 2 s Ljava/lang/Long;
0 1 3 ns Ljava/lang/Integer;
}
Signature: <T::Ljava/time/temporal/Temporal;>Lcom/fasterxml/jackson/datatype/jsr310/deser/JSR310DateTimeDeserializerBase<TT;>;
SourceFile: "InstantDeserializer.java"
NestMembers:
com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments
InnerClasses:
public final Feature = com.fasterxml.jackson.annotation.JsonFormat$Feature of com.fasterxml.jackson.annotation.JsonFormat
public Value = com.fasterxml.jackson.annotation.JsonFormat$Value of com.fasterxml.jackson.annotation.JsonFormat
public FromDecimalArguments = com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromDecimalArguments of com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
public FromIntegerArguments = com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer$FromIntegerArguments of com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles