final class java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser implements java.time.format.DateTimeFormatterBuilder$DateTimePrinterParser
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser
super_class: java.lang.Object
{
private final java.time.format.TextStyle textStyle;
descriptor: Ljava/time/format/TextStyle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.time.format.TextStyle);
descriptor: (Ljava/time/format/TextStyle;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/format/DateTimeFormatterBuilder$ChronoPrinterParser;
0 3 1 textStyle Ljava/time/format/TextStyle;
MethodParameters:
Name Flags
textStyle
public boolean format(java.time.format.DateTimePrintContext, java.lang.StringBuilder);
descriptor: (Ljava/time/format/DateTimePrintContext;Ljava/lang/StringBuilder;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic java.time.temporal.TemporalQueries.chronology:()Ljava/time/temporal/TemporalQuery;
invokevirtual java.time.format.DateTimePrintContext.getValue:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
checkcast java.time.chrono.Chronology
astore 3
start local 3 1: aload 3
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: java.time.chrono.Chronology
StackMap stack:
aload 0
getfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
ifnonnull 6
4: aload 2
aload 3
invokeinterface java.time.chrono.Chronology.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: goto 7
6: StackMap locals:
StackMap stack:
aload 2
aload 0
aload 3
aload 1
invokevirtual java.time.format.DateTimePrintContext.getLocale:()Ljava/util/Locale;
invokevirtual java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.getChronologyName:(Ljava/time/chrono/Chronology;Ljava/util/Locale;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/time/format/DateTimeFormatterBuilder$ChronoPrinterParser;
0 8 1 context Ljava/time/format/DateTimePrintContext;
0 8 2 buf Ljava/lang/StringBuilder;
1 8 3 chrono Ljava/time/chrono/Chronology;
MethodParameters:
Name Flags
context
buf
public int parse(java.time.format.DateTimeParseContext, java.lang.CharSequence, int);
descriptor: (Ljava/time/format/DateTimeParseContext;Ljava/lang/CharSequence;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
iflt 1
iload 3
aload 2
invokeinterface java.lang.CharSequence.length:()I
if_icmple 2
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
invokestatic java.time.chrono.Chronology.getAvailableChronologies:()Ljava/util/Set;
astore 4
start local 4 3: aconst_null
astore 5
start local 5 4: iconst_m1
istore 6
start local 6 5: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 15
StackMap locals: java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int java.util.Set java.time.chrono.Chronology int top java.util.Iterator
StackMap stack:
6: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.time.chrono.Chronology
astore 7
start local 7 7: aload 0
getfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
ifnonnull 10
8: aload 7
invokeinterface java.time.chrono.Chronology.getId:()Ljava/lang/String;
astore 9
start local 9 9: goto 11
end local 9 10: StackMap locals: java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int java.util.Set java.time.chrono.Chronology int java.time.chrono.Chronology java.util.Iterator
StackMap stack:
aload 0
aload 7
aload 1
invokevirtual java.time.format.DateTimeParseContext.getLocale:()Ljava/util/Locale;
invokevirtual java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.getChronologyName:(Ljava/time/chrono/Chronology;Ljava/util/Locale;)Ljava/lang/String;
astore 9
start local 9 11: StackMap locals: java.lang.String
StackMap stack:
aload 9
invokevirtual java.lang.String.length:()I
istore 10
start local 10 12: iload 10
iload 6
if_icmple 15
aload 1
aload 2
iload 3
aload 9
iconst_0
iload 10
invokevirtual java.time.format.DateTimeParseContext.subSequenceEquals:(Ljava/lang/CharSequence;ILjava/lang/CharSequence;II)Z
ifeq 15
13: aload 7
astore 5
14: iload 10
istore 6
end local 10 end local 9 end local 7 15: StackMap locals: java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int java.util.Set java.time.chrono.Chronology int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
16: aload 5
ifnonnull 18
17: iload 3
iconst_m1
ixor
ireturn
18: StackMap locals: java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser java.time.format.DateTimeParseContext java.lang.CharSequence int java.util.Set java.time.chrono.Chronology int
StackMap stack:
aload 1
aload 5
invokevirtual java.time.format.DateTimeParseContext.setParsed:(Ljava/time/chrono/Chronology;)V
19: iload 3
iload 6
iadd
ireturn
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 20 0 this Ljava/time/format/DateTimeFormatterBuilder$ChronoPrinterParser;
0 20 1 context Ljava/time/format/DateTimeParseContext;
0 20 2 text Ljava/lang/CharSequence;
0 20 3 position I
3 20 4 chronos Ljava/util/Set<Ljava/time/chrono/Chronology;>;
4 20 5 bestMatch Ljava/time/chrono/Chronology;
5 20 6 matchLen I
7 15 7 chrono Ljava/time/chrono/Chronology;
9 10 9 name Ljava/lang/String;
11 15 9 name Ljava/lang/String;
12 15 10 nameLen I
MethodParameters:
Name Flags
context
text
position
private java.lang.String getChronologyName(java.time.chrono.Chronology, java.util.Locale);
descriptor: (Ljava/time/chrono/Chronology;Ljava/util/Locale;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "calendarname."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface java.time.chrono.Chronology.getCalendarType:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 1: aload 3
aload 2
invokestatic java.time.format.DateTimeTextProvider.getLocalizedResource:(Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 2: aload 4
aload 1
invokedynamic get(Ljava/time/chrono/Chronology;)Ljava/util/function/Supplier;
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;
java/time/format/DateTimeFormatterBuilder$ChronoPrinterParser.lambda$0(Ljava/time/chrono/Chronology;)Ljava/lang/String; (6)
()Ljava/lang/String;
invokestatic java.util.Objects.requireNonNullElseGet:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/format/DateTimeFormatterBuilder$ChronoPrinterParser;
0 3 1 chrono Ljava/time/chrono/Chronology;
0 3 2 locale Ljava/util/Locale;
1 3 3 key Ljava/lang/String;
2 3 4 name Ljava/lang/String;
MethodParameters:
Name Flags
chrono
locale
private static java.lang.String lambda$0(java.time.chrono.Chronology);
descriptor: (Ljava/time/chrono/Chronology;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokeinterface java.time.chrono.Chronology.getId:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "DateTimeFormatterBuilder.java"
NestHost: java.time.format.DateTimeFormatterBuilder
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
final ChronoPrinterParser = java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser of java.time.format.DateTimeFormatterBuilder
abstract DateTimePrinterParser = java.time.format.DateTimeFormatterBuilder$DateTimePrinterParser of java.time.format.DateTimeFormatterBuilder