public class com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage 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.instrumentation.test.TagsTest$TagLanguage
  super_class: com.oracle.truffle.api.TruffleLanguage
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage this
         0: .line 129
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.TruffleLanguage.<init>:()V
            return
        end local 0 // com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/instrumentation/test/TagsTest$TagLanguage;

  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=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage this
        start local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
         0: .line 133
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalLanguages:()Ljava/util/Map;
            ldc "tagLanguage"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.nodes.LanguageInfo
            ldc "EXPRESSION"
            invokestatic com.oracle.truffle.api.instrumentation.Tag.findProvidedTag:(Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/String;)Ljava/lang/Class;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 134
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalLanguages:()Ljava/util/Map;
            ldc "tagLanguage"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.nodes.LanguageInfo
            ldc "STATEMENT"
            invokestatic com.oracle.truffle.api.instrumentation.Tag.findProvidedTag:(Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/String;)Ljava/lang/Class;
            invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 135
            aload 1 /* env */
            invokedynamic run(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Ljava/lang/Runnable;
              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:
                  ()V
                  com/oracle/truffle/api/instrumentation/test/TagsTest$TagLanguage.lambda$0(Lcom/oracle/truffle/api/TruffleLanguage$Env;)V (6)
                  ()V
            ldc Ljava/lang/NullPointerException;
            invokestatic com.oracle.truffle.api.instrumentation.test.TagsTest.assertFails:(Ljava/lang/Runnable;Ljava/lang/Class;)V
         3: .line 136
            aload 1 /* env */
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalLanguages:()Ljava/util/Map;
            ldc "tagLanguage"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.nodes.LanguageInfo
            ldc "UNKNOWN_TAG"
            invokestatic com.oracle.truffle.api.instrumentation.Tag.findProvidedTag:(Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/String;)Ljava/lang/Class;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         4: .line 137
            aload 1 /* env */
            areturn
        end local 1 // com.oracle.truffle.api.TruffleLanguage$Env env
        end local 0 // com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/truffle/api/instrumentation/test/TagsTest$TagLanguage;
            0    5     1   env  Lcom/oracle/truffle/api/TruffleLanguage$Env;
    MethodParameters:
      Name  Flags
      env   

  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.instrumentation.test.TagsTest$TagLanguage.createContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/TruffleLanguage$Env;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$0(com.oracle.truffle.api.TruffleLanguage$Env);
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 135
            aload 0
            invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.getInternalLanguages:()Ljava/util/Map;
            ldc "tagLanguage"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.truffle.api.nodes.LanguageInfo
            aconst_null
            invokestatic com.oracle.truffle.api.instrumentation.Tag.findProvidedTag:(Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/String;)Ljava/lang/Class;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lcom/oracle/truffle/api/TruffleLanguage<Lcom/oracle/truffle/api/TruffleLanguage$Env;>;
SourceFile: "TagsTest.java"
NestHost: com.oracle.truffle.api.instrumentation.test.TagsTest
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 ExpressionTag = com.oracle.truffle.api.instrumentation.StandardTags$ExpressionTag of com.oracle.truffle.api.instrumentation.StandardTags
  public final StatementTag = com.oracle.truffle.api.instrumentation.StandardTags$StatementTag of com.oracle.truffle.api.instrumentation.StandardTags
  public TagLanguage = com.oracle.truffle.api.instrumentation.test.TagsTest$TagLanguage of com.oracle.truffle.api.instrumentation.test.TagsTest
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.TruffleLanguage$Registration(id = "tagLanguage", name = "")
      com.oracle.truffle.api.instrumentation.ProvidedTags(value = {Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;, Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;})