class com.oracle.truffle.api.test.polyglot.LanguageSPITest$21 extends com.oracle.truffle.api.test.polyglot.ProxyLanguage
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.truffle.api.test.polyglot.LanguageSPITest$21
  super_class: com.oracle.truffle.api.test.polyglot.ProxyLanguage
{
  final org.graalvm.options.OptionKey<java.lang.String> option;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0010) ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Ljava/lang/String;>;

  final java.util.List<org.graalvm.options.OptionDescriptor> descriptors;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Lorg/graalvm/options/OptionDescriptor;>;

  final com.oracle.truffle.api.test.polyglot.LanguageSPITest this$0;
    descriptor: Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final java.util.concurrent.atomic.AtomicInteger val$getOptionDescriptors;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final java.util.concurrent.atomic.AtomicInteger val$iterator;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final java.util.concurrent.atomic.AtomicInteger val$get;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.oracle.truffle.api.test.polyglot.LanguageSPITest, java.util.concurrent.atomic.AtomicInteger, java.util.concurrent.atomic.AtomicInteger, java.util.concurrent.atomic.AtomicInteger);
    descriptor: (Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.oracle.truffle.api.test.polyglot.LanguageSPITest$21 this
         0: .line 1113
            aload 0 /* this */
            aload 1
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.this$0:Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest;
            aload 0 /* this */
            aload 2
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$getOptionDescriptors:Ljava/util/concurrent/atomic/AtomicInteger;
            aload 0 /* this */
            aload 3
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$iterator:Ljava/util/concurrent/atomic/AtomicInteger;
            aload 0 /* this */
            aload 4
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$get:Ljava/util/concurrent/atomic/AtomicInteger;
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.test.polyglot.ProxyLanguage.<init>:()V
         1: .line 1115
            aload 0 /* this */
            new org.graalvm.options.OptionKey
            dup
            ldc ""
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.option:Lorg/graalvm/options/OptionKey;
         2: .line 1118
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.descriptors:Ljava/util/List;
         3: .line 1119
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.descriptors:Ljava/util/List;
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.option:Lorg/graalvm/options/OptionKey;
            ldc "proxyLanguage.option"
            invokestatic org.graalvm.options.OptionDescriptor.newBuilder:(Lorg/graalvm/options/OptionKey;Ljava/lang/String;)Lorg/graalvm/options/OptionDescriptor$Builder;
            getstatic org.graalvm.options.OptionStability.STABLE:Lorg/graalvm/options/OptionStability;
            invokevirtual org.graalvm.options.OptionDescriptor$Builder.stability:(Lorg/graalvm/options/OptionStability;)Lorg/graalvm/options/OptionDescriptor$Builder;
            invokevirtual org.graalvm.options.OptionDescriptor$Builder.build:()Lorg/graalvm/options/OptionDescriptor;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 1113
            return
        end local 0 // com.oracle.truffle.api.test.polyglot.LanguageSPITest$21 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest$21;
    MethodParameters:
                          Name  Flags
      this$0                    final
      val$getOptionDescriptors  final
      val$iterator              final
      val$get                   final

  protected org.graalvm.options.OptionDescriptors getOptionDescriptors();
    descriptor: ()Lorg/graalvm/options/OptionDescriptors;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.test.polyglot.LanguageSPITest$21 this
         0: .line 1124
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$getOptionDescriptors:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            pop
         1: .line 1125
            new com.oracle.truffle.api.test.polyglot.LanguageSPITest$21$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$iterator:Ljava/util/concurrent/atomic/AtomicInteger;
            aload 0 /* this */
            getfield com.oracle.truffle.api.test.polyglot.LanguageSPITest$21.val$get:Ljava/util/concurrent/atomic/AtomicInteger;
            invokespecial com.oracle.truffle.api.test.polyglot.LanguageSPITest$21$1.<init>:(Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest$21;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/atomic/AtomicInteger;)V
            areturn
        end local 0 // com.oracle.truffle.api.test.polyglot.LanguageSPITest$21 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/test/polyglot/LanguageSPITest$21;
}
SourceFile: "LanguageSPITest.java"
EnclosingMethod: com.oracle.truffle.api.test.polyglot.LanguageSPITest.testLazyOptionInit:()V
NestHost: com.oracle.truffle.api.test.polyglot.LanguageSPITest
InnerClasses:
  com.oracle.truffle.api.test.polyglot.LanguageSPITest$21
  com.oracle.truffle.api.test.polyglot.LanguageSPITest$21$1
  public final Builder = org.graalvm.options.OptionDescriptor$Builder of org.graalvm.options.OptionDescriptor