public class com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 extends com.oracle.truffle.api.TruffleLanguage<com.oracle.truffle.api.TruffleLanguage$Env>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1
  super_class: com.oracle.truffle.api.TruffleLanguage
{
  static final org.graalvm.options.OptionKey<java.lang.String> StringOption1;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Ljava/lang/String;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "StringOption1 help", deprecated = true, category = org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;)

  public static final org.graalvm.options.OptionKey<java.lang.String> StringOption2;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Ljava/lang/String;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "StringOption2 help", deprecated = false, category = org.graalvm.options.OptionCategory.EXPERT:Lorg/graalvm/options/OptionCategory;, stability = org.graalvm.options.OptionStability.EXPERIMENTAL:Lorg/graalvm/options/OptionStability;)

  static final org.graalvm.options.OptionKey<java.lang.String> LOWER_CASE_OPTION;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Ljava/lang/String;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "Help for lowerCaseOption", name = "lowerCaseOption", deprecated = true, category = org.graalvm.options.OptionCategory.INTERNAL:Lorg/graalvm/options/OptionCategory;)

  public static final org.graalvm.options.OptionKey<java.lang.String> StableOption;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Ljava/lang/String;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "Stable Option Help", category = org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;, stability = org.graalvm.options.OptionStability.STABLE:Lorg/graalvm/options/OptionStability;)

  static final org.graalvm.options.OptionKey<org.graalvm.options.OptionMap<java.lang.String>> Properties;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Lorg/graalvm/options/OptionMap<Ljava/lang/String;>;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "User-defined properties", category = org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;)

  static final org.graalvm.options.OptionKey<com.oracle.truffle.api.test.option.OptionProcessorTest$EnumValue> ZEnumTest;
    descriptor: Lorg/graalvm/options/OptionKey;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/options/OptionKey<Lcom/oracle/truffle/api/test/option/OptionProcessorTest$EnumValue;>;
    RuntimeInvisibleAnnotations: 
      com.oracle.truffle.api.Option(help = "User-defined enum.", category = org.graalvm.options.OptionCategory.USER:Lorg/graalvm/options/OptionCategory;)

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 361
            new org.graalvm.options.OptionKey
            dup
            ldc "defaultValue"
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.StringOption1:Lorg/graalvm/options/OptionKey;
         1: .line 364
            new org.graalvm.options.OptionKey
            dup
            ldc "defaultValue"
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.StringOption2:Lorg/graalvm/options/OptionKey;
         2: .line 368
            new org.graalvm.options.OptionKey
            dup
            ldc "defaultValue"
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.LOWER_CASE_OPTION:Lorg/graalvm/options/OptionKey;
         3: .line 371
            new org.graalvm.options.OptionKey
            dup
            ldc "stable"
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.StableOption:Lorg/graalvm/options/OptionKey;
         4: .line 374
            ldc Ljava/lang/String;
            invokestatic org.graalvm.options.OptionKey.mapOf:(Ljava/lang/Class;)Lorg/graalvm/options/OptionKey;
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.Properties:Lorg/graalvm/options/OptionKey;
         5: .line 377
            new org.graalvm.options.OptionKey
            dup
            getstatic com.oracle.truffle.api.test.option.OptionProcessorTest$EnumValue.defaultValue:Lcom/oracle/truffle/api/test/option/OptionProcessorTest$EnumValue;
            invokespecial org.graalvm.options.OptionKey.<init>:(Ljava/lang/Object;)V
            putstatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.ZEnumTest:Lorg/graalvm/options/OptionKey;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
         0: .line 358
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.TruffleLanguage.<init>:()V
            return
        end local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/test/option/OptionProcessorTest$OptionTestLang1;

  protected org.graalvm.options.OptionDescriptors getOptionDescriptors();
    descriptor: ()Lorg/graalvm/options/OptionDescriptors;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
         0: .line 381
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tOptionTestLang1OptionDescriptors cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/test/option/OptionProcessorTest$OptionTestLang1;

  protected com.oracle.truffle.api.TruffleLanguage$Env createContext(com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/TruffleLanguage$Env;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
        start local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 386
            aload 1 /* env */
            areturn
        end local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 0 // com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/test/option/OptionProcessorTest$OptionTestLang1;
            0    1     1   env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
    MethodParameters:
      Name  Flags
      env   

  public static com.oracle.truffle.api.TruffleLanguage$Env getCurrentContext();
    descriptor: ()Lcom/oracle/truffle/api/TruffleLanguage$Env;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 390
            ldc Lcom/oracle/truffle/api/test/option/OptionProcessorTest$OptionTestLang1;
            invokestatic com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.getCurrentContext:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.TruffleLanguage$Env
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected java.lang.Object createContext(com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Ljava/lang/Object;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1.createContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/TruffleLanguage$Env;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lcom/oracle/truffle/api/TruffleLanguage<Lcom/oracle/truffle/api/TruffleLanguage$Env;>;
SourceFile: "OptionProcessorTest.java"
NestHost: com.oracle.truffle.api.test.option.OptionProcessorTest
InnerClasses:
  public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
  public abstract Registration = com.oracle.truffle.api.TruffleLanguage$Registration of com.oracle.truffle.api.TruffleLanguage
  public final EnumValue = com.oracle.truffle.api.test.option.OptionProcessorTest$EnumValue of com.oracle.truffle.api.test.option.OptionProcessorTest
  public OptionTestLang1 = com.oracle.truffle.api.test.option.OptionProcessorTest$OptionTestLang1 of com.oracle.truffle.api.test.option.OptionProcessorTest
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.TruffleLanguage$Registration(id = "optiontestlang1", version = "1.0", name = "optiontestlang1")