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 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
        start local 1 // java.time.format.TextStyle textStyle
         0: .line 4666
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 4668
            aload 0 /* this */
            aload 1 /* textStyle */
            putfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
         2: .line 4669
            return
        end local 1 // java.time.format.TextStyle textStyle
        end local 0 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
      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 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
        start local 1 // java.time.format.DateTimePrintContext context
        start local 2 // java.lang.StringBuilder buf
         0: .line 4673
            aload 1 /* context */
            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 /* chrono */
        start local 3 // java.time.chrono.Chronology chrono
         1: .line 4674
            aload 3 /* chrono */
            ifnonnull 3
         2: .line 4675
            iconst_0
            ireturn
         3: .line 4677
      StackMap locals: java.time.chrono.Chronology
      StackMap stack:
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
            ifnonnull 6
         4: .line 4678
            aload 2 /* buf */
            aload 3 /* chrono */
            invokeinterface java.time.chrono.Chronology.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 4679
            goto 7
         6: .line 4680
      StackMap locals:
      StackMap stack:
            aload 2 /* buf */
            aload 0 /* this */
            aload 3 /* chrono */
            aload 1 /* context */
            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: .line 4682
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.time.chrono.Chronology chrono
        end local 2 // java.lang.StringBuilder buf
        end local 1 // java.time.format.DateTimePrintContext context
        end local 0 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
      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 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
        start local 1 // java.time.format.DateTimeParseContext context
        start local 2 // java.lang.CharSequence text
        start local 3 // int position
         0: .line 4688
            iload 3 /* position */
            iflt 1
            iload 3 /* position */
            aload 2 /* text */
            invokeinterface java.lang.CharSequence.length:()I
            if_icmple 2
         1: .line 4689
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 4691
      StackMap locals:
      StackMap stack:
            invokestatic java.time.chrono.Chronology.getAvailableChronologies:()Ljava/util/Set;
            astore 4 /* chronos */
        start local 4 // java.util.Set chronos
         3: .line 4692
            aconst_null
            astore 5 /* bestMatch */
        start local 5 // java.time.chrono.Chronology bestMatch
         4: .line 4693
            iconst_m1
            istore 6 /* matchLen */
        start local 6 // int matchLen
         5: .line 4694
            aload 4 /* chronos */
            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 /* chrono */
        start local 7 // java.time.chrono.Chronology chrono
         7: .line 4696
            aload 0 /* this */
            getfield java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser.textStyle:Ljava/time/format/TextStyle;
            ifnonnull 10
         8: .line 4697
            aload 7 /* chrono */
            invokeinterface java.time.chrono.Chronology.getId:()Ljava/lang/String;
            astore 9 /* name */
        start local 9 // java.lang.String name
         9: .line 4698
            goto 11
        end local 9 // java.lang.String name
        10: .line 4699
      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 /* this */
            aload 7 /* chrono */
            aload 1 /* context */
            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 /* name */
        start local 9 // java.lang.String name
        11: .line 4701
      StackMap locals: java.lang.String
      StackMap stack:
            aload 9 /* name */
            invokevirtual java.lang.String.length:()I
            istore 10 /* nameLen */
        start local 10 // int nameLen
        12: .line 4702
            iload 10 /* nameLen */
            iload 6 /* matchLen */
            if_icmple 15
            aload 1 /* context */
            aload 2 /* text */
            iload 3 /* position */
            aload 9 /* name */
            iconst_0
            iload 10 /* nameLen */
            invokevirtual java.time.format.DateTimeParseContext.subSequenceEquals:(Ljava/lang/CharSequence;ILjava/lang/CharSequence;II)Z
            ifeq 15
        13: .line 4703
            aload 7 /* chrono */
            astore 5 /* bestMatch */
        14: .line 4704
            iload 10 /* nameLen */
            istore 6 /* matchLen */
        end local 10 // int nameLen
        end local 9 // java.lang.String name
        end local 7 // java.time.chrono.Chronology chrono
        15: .line 4694
      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: .line 4707
            aload 5 /* bestMatch */
            ifnonnull 18
        17: .line 4708
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        18: .line 4710
      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 /* context */
            aload 5 /* bestMatch */
            invokevirtual java.time.format.DateTimeParseContext.setParsed:(Ljava/time/chrono/Chronology;)V
        19: .line 4711
            iload 3 /* position */
            iload 6 /* matchLen */
            iadd
            ireturn
        end local 6 // int matchLen
        end local 5 // java.time.chrono.Chronology bestMatch
        end local 4 // java.util.Set chronos
        end local 3 // int position
        end local 2 // java.lang.CharSequence text
        end local 1 // java.time.format.DateTimeParseContext context
        end local 0 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
      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 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
        start local 1 // java.time.chrono.Chronology chrono
        start local 2 // java.util.Locale locale
         0: .line 4725
            new java.lang.StringBuilder
            dup
            ldc "calendarname."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* chrono */
            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 /* key */
        start local 3 // java.lang.String key
         1: .line 4726
            aload 3 /* key */
            aload 2 /* locale */
            invokestatic java.time.format.DateTimeTextProvider.getLocalizedResource:(Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* name */
        start local 4 // java.lang.String name
         2: .line 4727
            aload 4 /* name */
            aload 1 /* chrono */
            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 // java.lang.String name
        end local 3 // java.lang.String key
        end local 2 // java.util.Locale locale
        end local 1 // java.time.chrono.Chronology chrono
        end local 0 // java.time.format.DateTimeFormatterBuilder$ChronoPrinterParser this
      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: .line 4727
            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