final class java.time.format.DateTimePrintContext
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.time.format.DateTimePrintContext
super_class: java.lang.Object
{
private java.time.temporal.TemporalAccessor temporal;
descriptor: Ljava/time/temporal/TemporalAccessor;
flags: (0x0002) ACC_PRIVATE
private java.time.format.DateTimeFormatter formatter;
descriptor: Ljava/time/format/DateTimeFormatter;
flags: (0x0002) ACC_PRIVATE
private int optional;
descriptor: I
flags: (0x0002) ACC_PRIVATE
void <init>(java.time.temporal.TemporalAccessor, java.time.format.DateTimeFormatter);
descriptor: (Ljava/time/temporal/TemporalAccessor;Ljava/time/format/DateTimeFormatter;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
aload 2
invokestatic java.time.format.DateTimePrintContext.adjust:(Ljava/time/temporal/TemporalAccessor;Ljava/time/format/DateTimeFormatter;)Ljava/time/temporal/TemporalAccessor;
putfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
2: aload 0
aload 2
putfield java.time.format.DateTimePrintContext.formatter:Ljava/time/format/DateTimeFormatter;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/format/DateTimePrintContext;
0 4 1 temporal Ljava/time/temporal/TemporalAccessor;
0 4 2 formatter Ljava/time/format/DateTimeFormatter;
MethodParameters:
Name Flags
temporal
formatter
private static java.time.temporal.TemporalAccessor adjust(java.time.temporal.TemporalAccessor, java.time.format.DateTimeFormatter);
descriptor: (Ljava/time/temporal/TemporalAccessor;Ljava/time/format/DateTimeFormatter;)Ljava/time/temporal/TemporalAccessor;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=13, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.time.format.DateTimeFormatter.getChronology:()Ljava/time/chrono/Chronology;
astore 2
start local 2 1: aload 1
invokevirtual java.time.format.DateTimeFormatter.getZone:()Ljava/time/ZoneId;
astore 3
start local 3 2: aload 2
ifnonnull 4
aload 3
ifnonnull 4
3: aload 0
areturn
4: StackMap locals: java.time.chrono.Chronology java.time.ZoneId
StackMap stack:
aload 0
invokestatic java.time.temporal.TemporalQueries.chronology:()Ljava/time/temporal/TemporalQuery;
invokeinterface java.time.temporal.TemporalAccessor.query:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
checkcast java.time.chrono.Chronology
astore 4
start local 4 5: aload 0
invokestatic java.time.temporal.TemporalQueries.zoneId:()Ljava/time/temporal/TemporalQuery;
invokeinterface java.time.temporal.TemporalAccessor.query:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
checkcast java.time.ZoneId
astore 5
start local 5 6: aload 2
aload 4
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 8
7: aconst_null
astore 2
8: StackMap locals: java.time.chrono.Chronology java.time.ZoneId
StackMap stack:
aload 3
aload 5
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 10
9: aconst_null
astore 3
10: StackMap locals:
StackMap stack:
aload 2
ifnonnull 12
aload 3
ifnonnull 12
11: aload 0
areturn
12: StackMap locals:
StackMap stack:
aload 2
ifnull 13
aload 2
goto 14
StackMap locals:
StackMap stack:
13: aload 4
StackMap locals:
StackMap stack: java.time.chrono.Chronology
14: astore 6
start local 6 15: aload 3
ifnull 27
16: aload 0
getstatic java.time.temporal.ChronoField.INSTANT_SECONDS:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.TemporalAccessor.isSupported:(Ljava/time/temporal/TemporalField;)Z
ifeq 21
17: aload 6
ifnull 18
aload 6
goto 19
StackMap locals: java.time.chrono.Chronology
StackMap stack:
18: getstatic java.time.chrono.IsoChronology.INSTANCE:Ljava/time/chrono/IsoChronology;
StackMap locals:
StackMap stack: java.time.chrono.Chronology
19: astore 7
start local 7 20: aload 7
aload 0
invokestatic java.time.Instant.from:(Ljava/time/temporal/TemporalAccessor;)Ljava/time/Instant;
aload 3
invokeinterface java.time.chrono.Chronology.zonedDateTime:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/chrono/ChronoZonedDateTime;
areturn
end local 7 21: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.time.ZoneId.normalized:()Ljava/time/ZoneId;
instanceof java.time.ZoneOffset
ifeq 27
aload 0
getstatic java.time.temporal.ChronoField.OFFSET_SECONDS:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.TemporalAccessor.isSupported:(Ljava/time/temporal/TemporalField;)Z
ifeq 27
22: aload 0
getstatic java.time.temporal.ChronoField.OFFSET_SECONDS:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.TemporalAccessor.get:(Ljava/time/temporal/TemporalField;)I
aload 3
invokevirtual java.time.ZoneId.getRules:()Ljava/time/zone/ZoneRules;
getstatic java.time.Instant.EPOCH:Ljava/time/Instant;
invokevirtual java.time.zone.ZoneRules.getOffset:(Ljava/time/Instant;)Ljava/time/ZoneOffset;
invokevirtual java.time.ZoneOffset.getTotalSeconds:()I
if_icmpeq 27
23: new java.time.DateTimeException
dup
new java.lang.StringBuilder
dup
ldc "Unable to apply override zone '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
24: ldc "' because the temporal object being formatted has a different offset but"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: ldc " does not represent an instant: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals:
StackMap stack:
aload 3
ifnull 28
aload 3
goto 29
StackMap locals:
StackMap stack:
28: aload 5
StackMap locals:
StackMap stack: java.time.ZoneId
29: astore 7
start local 7 30: aload 2
ifnull 46
31: aload 0
getstatic java.time.temporal.ChronoField.EPOCH_DAY:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.TemporalAccessor.isSupported:(Ljava/time/temporal/TemporalField;)Z
ifeq 34
32: aload 6
aload 0
invokeinterface java.time.chrono.Chronology.date:(Ljava/time/temporal/TemporalAccessor;)Ljava/time/chrono/ChronoLocalDate;
astore 8
start local 8 33: goto 47
end local 8 34: StackMap locals: java.time.ZoneId
StackMap stack:
aload 2
getstatic java.time.chrono.IsoChronology.INSTANCE:Ljava/time/chrono/IsoChronology;
if_acmpne 35
aload 4
ifnull 44
35: StackMap locals:
StackMap stack:
invokestatic java.time.temporal.ChronoField.values:()[Ljava/time/temporal/ChronoField;
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 43
StackMap locals: java.time.temporal.TemporalAccessor java.time.format.DateTimeFormatter java.time.chrono.Chronology java.time.ZoneId java.time.chrono.Chronology java.time.ZoneId java.time.chrono.Chronology java.time.ZoneId top top int int java.time.temporal.ChronoField[]
StackMap stack:
36: aload 12
iload 10
aaload
astore 9
start local 9 37: aload 9
invokevirtual java.time.temporal.ChronoField.isDateBased:()Z
ifeq 42
aload 0
aload 9
invokeinterface java.time.temporal.TemporalAccessor.isSupported:(Ljava/time/temporal/TemporalField;)Z
ifeq 42
38: new java.time.DateTimeException
dup
new java.lang.StringBuilder
dup
ldc "Unable to apply override chronology '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
39: ldc "' because the temporal object being formatted contains date fields but"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
40: ldc " does not represent a whole date: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
41: invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
athrow
end local 9 42: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
43: iload 10
iload 11
if_icmplt 36
44: StackMap locals: java.time.temporal.TemporalAccessor java.time.format.DateTimeFormatter java.time.chrono.Chronology java.time.ZoneId java.time.chrono.Chronology java.time.ZoneId java.time.chrono.Chronology java.time.ZoneId
StackMap stack:
aconst_null
astore 8
start local 8 45: goto 47
end local 8 46: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 47: StackMap locals: java.time.chrono.ChronoLocalDate
StackMap stack:
new java.time.format.DateTimePrintContext$1
dup
aload 8
aload 0
aload 6
aload 7
invokespecial java.time.format.DateTimePrintContext$1.<init>:(Ljava/time/chrono/ChronoLocalDate;Ljava/time/temporal/TemporalAccessor;Ljava/time/chrono/Chronology;Ljava/time/ZoneId;)V
areturn
end local 8 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 48 0 temporal Ljava/time/temporal/TemporalAccessor;
0 48 1 formatter Ljava/time/format/DateTimeFormatter;
1 48 2 overrideChrono Ljava/time/chrono/Chronology;
2 48 3 overrideZone Ljava/time/ZoneId;
5 48 4 temporalChrono Ljava/time/chrono/Chronology;
6 48 5 temporalZone Ljava/time/ZoneId;
15 48 6 effectiveChrono Ljava/time/chrono/Chronology;
20 21 7 chrono Ljava/time/chrono/Chronology;
30 48 7 effectiveZone Ljava/time/ZoneId;
33 34 8 effectiveDate Ljava/time/chrono/ChronoLocalDate;
45 46 8 effectiveDate Ljava/time/chrono/ChronoLocalDate;
47 48 8 effectiveDate Ljava/time/chrono/ChronoLocalDate;
37 42 9 f Ljava/time/temporal/ChronoField;
MethodParameters:
Name Flags
temporal final
formatter
java.time.temporal.TemporalAccessor getTemporal();
descriptor: ()Ljava/time/temporal/TemporalAccessor;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimePrintContext;
java.util.Locale getLocale();
descriptor: ()Ljava/util/Locale;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimePrintContext.formatter:Ljava/time/format/DateTimeFormatter;
invokevirtual java.time.format.DateTimeFormatter.getLocale:()Ljava/util/Locale;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimePrintContext;
java.time.format.DecimalStyle getDecimalStyle();
descriptor: ()Ljava/time/format/DecimalStyle;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimePrintContext.formatter:Ljava/time/format/DateTimeFormatter;
invokevirtual java.time.format.DateTimeFormatter.getDecimalStyle:()Ljava/time/format/DecimalStyle;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimePrintContext;
void startOptional();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield java.time.format.DateTimePrintContext.optional:I
iconst_1
iadd
putfield java.time.format.DateTimePrintContext.optional:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/time/format/DateTimePrintContext;
void endOptional();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield java.time.format.DateTimePrintContext.optional:I
iconst_1
isub
putfield java.time.format.DateTimePrintContext.optional:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/time/format/DateTimePrintContext;
<R> R getValue(java.time.temporal.TemporalQuery<R>);
descriptor: (Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
aload 1
invokeinterface java.time.temporal.TemporalAccessor.query:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
ifnonnull 3
aload 0
getfield java.time.format.DateTimePrintContext.optional:I
ifne 3
2: new java.time.DateTimeException
dup
new java.lang.StringBuilder
dup
ldc "Unable to extract value: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Object
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/format/DateTimePrintContext;
0 4 1 query Ljava/time/temporal/TemporalQuery<TR;>;
1 4 2 result TR;
Signature: <R:Ljava/lang/Object;>(Ljava/time/temporal/TemporalQuery<TR;>;)TR;
MethodParameters:
Name Flags
query
java.lang.Long getValue(java.time.temporal.TemporalField);
descriptor: (Ljava/time/temporal/TemporalField;)Ljava/lang/Long;
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
aload 1
invokeinterface java.time.temporal.TemporalAccessor.getLong:(Ljava/time/temporal/TemporalField;)J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
1: areturn
2: StackMap locals:
StackMap stack: java.time.DateTimeException
astore 2
start local 2 3: aload 0
getfield java.time.format.DateTimePrintContext.optional:I
ifle 5
4: aconst_null
areturn
5: StackMap locals: java.time.DateTimeException
StackMap stack:
aload 2
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/time/format/DateTimePrintContext;
0 6 1 field Ljava/time/temporal/TemporalField;
3 6 2 ex Ljava/time/DateTimeException;
Exception table:
from to target type
0 1 2 Class java.time.DateTimeException
MethodParameters:
Name Flags
field
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.format.DateTimePrintContext.temporal:Ljava/time/temporal/TemporalAccessor;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/format/DateTimePrintContext;
}
SourceFile: "DateTimePrintContext.java"
NestMembers:
java.time.format.DateTimePrintContext$1
InnerClasses:
java.time.format.DateTimePrintContext$1