public class com.oracle.truffle.js.scriptengine.test.TestEngineLookup
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.js.scriptengine.test.TestEngineLookup
  super_class: java.lang.Object
{
  private final javax.script.ScriptEngineManager manager;
    descriptor: Ljavax/script/ScriptEngineManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
         0: .line 52
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 57
            aload 0 /* this */
            new javax.script.ScriptEngineManager
            dup
            invokespecial javax.script.ScriptEngineManager.<init>:()V
            putfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
         2: .line 52
            return
        end local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/js/scriptengine/test/TestEngineLookup;

  public void testByExtension();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
         0: .line 61
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "js"
            aastore
            dup
            iconst_1
            ldc "mjs"
            aastore
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: com.oracle.truffle.js.scriptengine.test.TestEngineLookup top int int java.lang.String[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* extension */
        start local 1 // java.lang.String extension
         2: .line 62
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            aload 1 /* extension */
            invokevirtual javax.script.ScriptEngineManager.getEngineByExtension:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            astore 5 /* engine */
        start local 5 // javax.script.ScriptEngine engine
         3: .line 63
            bipush 42
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 5 /* engine */
            ldc "42;"
            invokeinterface javax.script.ScriptEngine.eval:(Ljava/lang/String;)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 5 // javax.script.ScriptEngine engine
        end local 1 // java.lang.String extension
         4: .line 61
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 65
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            ldc "foo"
            invokevirtual javax.script.ScriptEngineManager.getEngineByExtension:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         7: .line 66
            return
        end local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/oracle/truffle/js/scriptengine/test/TestEngineLookup;
            2    4     1  extension  Ljava/lang/String;
            3    4     5     engine  Ljavax/script/ScriptEngine;
    Exceptions:
      throws javax.script.ScriptException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testByMimeType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
         0: .line 70
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
            ldc "application/javascript"
            aastore
            dup
            iconst_1
            ldc "application/ecmascript"
            aastore
            dup
            iconst_2
            ldc "text/javascript"
            aastore
            dup
            iconst_3
            ldc "text/ecmascript"
            aastore
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: com.oracle.truffle.js.scriptengine.test.TestEngineLookup top int int java.lang.String[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* mime */
        start local 1 // java.lang.String mime
         2: .line 71
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            aload 1 /* mime */
            invokevirtual javax.script.ScriptEngineManager.getEngineByMimeType:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            astore 5 /* engine */
        start local 5 // javax.script.ScriptEngine engine
         3: .line 72
            bipush 42
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 5 /* engine */
            ldc "42;"
            invokeinterface javax.script.ScriptEngine.eval:(Ljava/lang/String;)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 5 // javax.script.ScriptEngine engine
        end local 1 // java.lang.String mime
         4: .line 70
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 74
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            ldc "foo/bar"
            invokevirtual javax.script.ScriptEngineManager.getEngineByMimeType:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         7: .line 75
            return
        end local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/oracle/truffle/js/scriptengine/test/TestEngineLookup;
            2    4     1    mime  Ljava/lang/String;
            3    4     5  engine  Ljavax/script/ScriptEngine;
    Exceptions:
      throws javax.script.ScriptException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testByNames();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
         0: .line 79
            bipush 14
            anewarray java.lang.String
            dup
            iconst_0
            ldc "Graal.js"
            aastore
            dup
            iconst_1
            ldc "graal.js"
            aastore
            dup
            iconst_2
            ldc "Graal-js"
            aastore
            dup
            iconst_3
            ldc "graal-js"
            aastore
            dup
            iconst_4
            ldc "Graal.JS"
            aastore
            dup
            iconst_5
            ldc "Graal-JS"
            aastore
            dup
            bipush 6
            ldc "GraalJS"
            aastore
            dup
            bipush 7
            ldc "GraalJSPolyglot"
            aastore
            dup
            bipush 8
            ldc "js"
            aastore
            dup
            bipush 9
            ldc "JS"
            aastore
            dup
            bipush 10
            ldc "JavaScript"
            aastore
            dup
            bipush 11
         1: .line 80
            ldc "javascript"
            aastore
            dup
            bipush 12
            ldc "ECMAScript"
            aastore
            dup
            bipush 13
            ldc "ecmascript"
            aastore
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 6
      StackMap locals: com.oracle.truffle.js.scriptengine.test.TestEngineLookup top int int java.lang.String[]
      StackMap stack:
         2: aload 4
            iload 2
            aaload
            astore 1 /* name */
        start local 1 // java.lang.String name
         3: .line 81
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            aload 1 /* name */
            invokevirtual javax.script.ScriptEngineManager.getEngineByName:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            astore 5 /* engine */
        start local 5 // javax.script.ScriptEngine engine
         4: .line 82
            bipush 42
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 5 /* engine */
            ldc "42;"
            invokeinterface javax.script.ScriptEngine.eval:(Ljava/lang/String;)Ljava/lang/Object;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 5 // javax.script.ScriptEngine engine
        end local 1 // java.lang.String name
         5: .line 79
            iinc 2 1
      StackMap locals:
      StackMap stack:
         6: iload 2
            iload 3
            if_icmplt 2
         7: .line 84
            aload 0 /* this */
            getfield com.oracle.truffle.js.scriptengine.test.TestEngineLookup.manager:Ljavax/script/ScriptEngineManager;
            ldc "foo"
            invokevirtual javax.script.ScriptEngineManager.getEngineByName:(Ljava/lang/String;)Ljavax/script/ScriptEngine;
            invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
         8: .line 85
            return
        end local 0 // com.oracle.truffle.js.scriptengine.test.TestEngineLookup this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/oracle/truffle/js/scriptengine/test/TestEngineLookup;
            3    5     1    name  Ljava/lang/String;
            4    5     5  engine  Ljavax/script/ScriptEngine;
    Exceptions:
      throws javax.script.ScriptException
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "TestEngineLookup.java"