public class com.oracle.truffle.js.test.builtins.JavaBuiltinsTest extends com.oracle.truffle.js.test.JSTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.js.test.builtins.JavaBuiltinsTest
  super_class: com.oracle.truffle.js.test.JSTest
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 61
            aload 0 /* this */
            invokespecial com.oracle.truffle.js.test.JSTest.<init>:()V
            return
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;

  private static java.lang.String test(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String sourceCode
         0: .line 64
            aload 0 /* sourceCode */
            aconst_null
            iconst_1
            aconst_null
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String sourceCode
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  sourceCode  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      sourceCode  

  private static java.lang.String test(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String sourceCode
        start local 1 // java.lang.String failedMessage
         0: .line 68
            aload 0 /* sourceCode */
            aload 1 /* failedMessage */
            iconst_1
            aconst_null
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String failedMessage
        end local 0 // java.lang.String sourceCode
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0     sourceCode  Ljava/lang/String;
            0    1     1  failedMessage  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      sourceCode     
      failedMessage  

  private static java.lang.String test(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String sourceCode
        start local 1 // java.lang.String failedMessage
        start local 2 // boolean allowAllAccess
         0: .line 72
            aload 0 /* sourceCode */
            aload 1 /* failedMessage */
            iload 2 /* allowAllAccess */
            aconst_null
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // boolean allowAllAccess
        end local 1 // java.lang.String failedMessage
        end local 0 // java.lang.String sourceCode
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      sourceCode  Ljava/lang/String;
            0    1     1   failedMessage  Ljava/lang/String;
            0    1     2  allowAllAccess  Z
    MethodParameters:
                Name  Flags
      sourceCode      
      failedMessage   
      allowAllAccess  

  private static java.lang.String test(java.lang.String, java.lang.String, boolean, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.lang.String sourceCode
        start local 1 // java.lang.String failedMessage
        start local 2 // boolean allowAllAccess
        start local 3 // java.lang.Object arg
         0: .line 76
            aload 0 /* sourceCode */
            aload 1 /* failedMessage */
            iload 2 /* allowAllAccess */
            aload 3 /* arg */
            iconst_0
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            areturn
        end local 3 // java.lang.Object arg
        end local 2 // boolean allowAllAccess
        end local 1 // java.lang.String failedMessage
        end local 0 // java.lang.String sourceCode
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0      sourceCode  Ljava/lang/String;
            0    1     1   failedMessage  Ljava/lang/String;
            0    1     2  allowAllAccess  Z
            0    1     3             arg  Ljava/lang/Object;
    MethodParameters:
                Name  Flags
      sourceCode      
      failedMessage   
      allowAllAccess  
      arg             

  private static java.lang.String test(java.lang.String, java.lang.String, boolean, java.lang.Object, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // java.lang.String sourceCode
        start local 1 // java.lang.String failedMessage
        start local 2 // boolean allowAllAccess
        start local 3 // java.lang.Object arg
        start local 4 // boolean nashornCompat
         0: .line 80
            aconst_null
            astore 5
            aconst_null
            astore 6
         1: iconst_0
            anewarray java.lang.String
            invokestatic com.oracle.truffle.js.test.JSTest.newContextBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            iload 2 /* allowAllAccess */
            invokevirtual org.graalvm.polyglot.Context$Builder.allowAllAccess:(Z)Lorg/graalvm/polyglot/Context$Builder;
            ldc "js.nashorn-compat"
         2: .line 81
            iload 4 /* nashornCompat */
            invokestatic java.lang.String.valueOf:(Z)Ljava/lang/String;
         3: .line 80
            invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
         4: .line 81
            invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
         5: .line 80
            astore 7 /* context */
        start local 7 // org.graalvm.polyglot.Context context
         6: .line 82
            aload 3 /* arg */
            ifnull 8
         7: .line 83
            aload 7 /* context */
            ldc "js"
            invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
            ldc "arg"
            aload 3 /* arg */
            invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
         8: .line 85
      StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
      StackMap stack:
            aload 7 /* context */
            ldc "js"
            aload 0 /* sourceCode */
            ldc "java-test"
            invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
            invokevirtual org.graalvm.polyglot.Source$Builder.buildLiteral:()Lorg/graalvm/polyglot/Source;
            invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
            astore 8 /* result */
        start local 8 // org.graalvm.polyglot.Value result
         9: .line 86
            aload 1 /* failedMessage */
            ifnonnull 10
            iconst_1
            goto 11
      StackMap locals: org.graalvm.polyglot.Value
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: invokestatic org.junit.Assert.assertTrue:(Z)V
        12: .line 87
            aload 8 /* result */
            invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
        13: .line 88
            aload 7 /* context */
            ifnull 14
            aload 7 /* context */
            invokevirtual org.graalvm.polyglot.Context.close:()V
        14: .line 87
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
        end local 8 // org.graalvm.polyglot.Value result
      StackMap locals: java.lang.String java.lang.String int java.lang.Object int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
      StackMap stack: java.lang.Throwable
        15: astore 5
        16: .line 88
            aload 7 /* context */
            ifnull 17
            aload 7 /* context */
            invokevirtual org.graalvm.polyglot.Context.close:()V
        end local 7 // org.graalvm.polyglot.Context context
      StackMap locals:
      StackMap stack:
        17: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 6
            aload 5
            ifnonnull 19
            aload 6
            astore 5
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 5
            aload 6
            if_acmpeq 20
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        20: aload 5
            athrow
      StackMap locals: java.lang.String java.lang.String int java.lang.Object int
      StackMap stack: java.lang.Exception
        21: astore 5 /* ex */
        start local 5 // java.lang.Exception ex
        22: .line 89
            aload 5 /* ex */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            aload 1 /* failedMessage */
            ifnull 23
            iconst_1
            goto 24
      StackMap locals: java.lang.String java.lang.String int java.lang.Object int java.lang.Exception
      StackMap stack: java.lang.String
        23: iconst_0
      StackMap locals: java.lang.String java.lang.String int java.lang.Object int java.lang.Exception
      StackMap stack: java.lang.String int
        24: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
        25: .line 90
            aload 5 /* ex */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            aload 5 /* ex */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            aload 1 /* failedMessage */
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
        26: .line 91
            ldc "FAILED_AS_EXPECTED"
            areturn
        end local 5 // java.lang.Exception ex
        end local 4 // boolean nashornCompat
        end local 3 // java.lang.Object arg
        end local 2 // boolean allowAllAccess
        end local 1 // java.lang.String failedMessage
        end local 0 // java.lang.String sourceCode
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   27     0      sourceCode  Ljava/lang/String;
            0   27     1   failedMessage  Ljava/lang/String;
            0   27     2  allowAllAccess  Z
            0   27     3             arg  Ljava/lang/Object;
            0   27     4   nashornCompat  Z
            6   17     7         context  Lorg/graalvm/polyglot/Context;
            9   15     8          result  Lorg/graalvm/polyglot/Value;
           22   27     5              ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           6    13      15  any
           1    14      18  any
          15    18      18  any
           0    14      21  Class java.lang.Exception
          15    21      21  Class java.lang.Exception
    MethodParameters:
                Name  Flags
      sourceCode      
      failedMessage   
      allowAllAccess  
      arg             
      nashornCompat   

  public void testJavaType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 97
            ldc "''+(Java.type('java.lang.String'));"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 98
            ldc "class java.lang.String"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 100
            ldc "Java.type('does.not.exist');"
            ldc "does not exist"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         3: .line 101
            ldc "Java.type(1);"
            ldc "expects one string argument"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         4: .line 102
            ldc "Java.type('java.lang.String');"
            ldc "Java is not defined"
            iconst_0
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
            pop
         5: .line 103
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    6     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaTypeName();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 107
            ldc "var t = Java.type('java.lang.String'); Java.typeName(t);"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 108
            ldc "java.lang.String"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 110
            ldc "''+Java.typeName();"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
         3: .line 111
            ldc "undefined"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 112
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaExtend();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 124
            ldc "Java.extend();"
            ldc "needs at least one argument"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         1: .line 125
            ldc "Java.extend({});"
            ldc "needs at least one type argument"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         2: .line 126
            ldc "Java.extend(1);"
            ldc "needs Java types"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         3: .line 127
            return
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaFrom();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 131
            ldc "var t = Java.from(arg); ''+t;"
            aconst_null
            iconst_1
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_3
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 132
            ldc "1,2,3"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 134
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* list */
        start local 2 // java.util.List list
         3: .line 135
            aload 2 /* list */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 136
            aload 2 /* list */
            bipush 42
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 137
            ldc "var t = Java.from(arg); ''+t;"
            aconst_null
            iconst_1
            aload 2 /* list */
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            astore 1 /* result */
         6: .line 138
            ldc "true,42"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 140
            ldc "Java.from(1);"
            ldc "Cannot convert to JavaScript"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         8: .line 141
            ldc "Java.from({a:'foo'});"
            ldc "Cannot convert to JavaScript"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         9: .line 142
            return
        end local 2 // java.util.List list
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1   10     1  result  Ljava/lang/String;
            3   10     2    list  Ljava/util/List<Ljava/lang/Object;>;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaTo();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 146
            ldc "var t = Java.to({a:'foo'}); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 147
            ldc "[]"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 149
            ldc "var t = Java.to({a:'foo'},arg); ''+t;"
            aconst_null
            iconst_1
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;)Ljava/lang/String;
            astore 1 /* result */
         3: .line 150
            ldc "[]"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 152
            ldc "var t = Java.to({a:'foo'}, 'int[]'); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            pop
         5: .line 153
            ldc "[]"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 155
            ldc "var t = Java.to(1, 'int[]'); ''+t;"
            ldc "is not an Object"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         7: .line 156
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    8     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaSuper();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 160
            ldc "var t = Java.super({a:'foo'}); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            pop
         1: .line 161
            return
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testJavaIsType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 165
            ldc "var t = Java.isType(Java.type('java.lang.String')); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 166
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 167
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    3     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsJavaObject();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 171
            ldc "var t = Java.isJavaObject(Java.type('java.lang.String')); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 172
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 174
            ldc "var t = Java.isJavaObject(1); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
         3: .line 175
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 176
            ldc "var t = Java.isJavaObject({}); ''+t;"
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* result */
         5: .line 177
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 178
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    7     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsJavaMethod();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 183
            ldc "var t = Java.isJavaMethod(Java.type('java.lang.System').nanoTime); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 184
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 186
            ldc "var t = Java.isJavaMethod( x => x+1 ); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
         3: .line 187
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 188
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsJavaFunction();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 193
            ldc "var t = Java.isJavaFunction(Java.type('java.lang.System').nanoTime); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 194
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 196
            ldc "var t = Java.isJavaFunction( x => x+1 ); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
         3: .line 197
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 198
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsScriptFunction();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 203
            ldc "var t = Java.isScriptFunction(Java.type('java.lang.System').nanoTime); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 204
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 206
            ldc "var t = Java.isScriptFunction( x => x+1 ); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
         3: .line 207
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 208
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsScriptObject();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 213
            ldc "var t = Java.isScriptObject(Java.type('java.lang.String')); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 214
            ldc "false"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 216
            ldc "var t = Java.isScriptObject({}); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
         3: .line 217
            ldc "true"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 218
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testSynchronize();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 223
            ldc "var t = Java.synchronized(x=>x+1); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 224
            ldc "function synchronizedWrapper() { [native code] }"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 226
            ldc "var t = Java.synchronized(x=>x+1, {}); t(1); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
         3: .line 227
            ldc "function bound() { [native code] }"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 229
            ldc "var t = Java.synchronized(false, {}); ''+t;"
            ldc "is not a function"
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            pop
         5: .line 230
            ldc "var t = Java.synchronized(x=>x+1, 1); f(1); ''+t;"
            ldc "Locking not supported on"
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            pop
         6: .line 231
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    7     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testAddToClasspath();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
         0: .line 236
            ldc "var t = Java.addToClasspath('.'); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         1: .line 237
            ldc "undefined"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 239
            ldc "var t = Java.addToClasspath(true); ''+t;"
            aconst_null
            iconst_1
            aconst_null
            iconst_1
            invokestatic com.oracle.truffle.js.test.builtins.JavaBuiltinsTest.test:(Ljava/lang/String;Ljava/lang/String;ZLjava/lang/Object;Z)Ljava/lang/String;
            pop
         3: .line 240
            ldc "undefined"
            aload 1 /* result */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 241
            return
        end local 1 // java.lang.String result
        end local 0 // com.oracle.truffle.js.test.builtins.JavaBuiltinsTest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/oracle/truffle/js/test/builtins/JavaBuiltinsTest;
            1    5     1  result  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "JavaBuiltinsTest.java"
InnerClasses:
  public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
  public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source