public class com.oracle.truffle.js.test.builtins.ArrayPrototypeBuiltins
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.js.test.builtins.ArrayPrototypeBuiltins
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/test/builtins/ArrayPrototypeBuiltins;
public void testUnshift();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: iconst_0
anewarray java.lang.String
invokestatic com.oracle.truffle.js.test.JSTest.newContextBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 3
start local 3 2: aload 3
ldc "js"
ldc "var o = Object.create({ length: 20000, 10: 'foo' }); Array.prototype.unshift.call(o, 'bar');"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
pop
3: aload 3
ldc "js"
ldc "o[0]"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 4: aload 4
invokevirtual org.graalvm.polyglot.Value.isString:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
5: ldc "bar"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 3
ldc "js"
ldc "o.hasOwnProperty(10)"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
astore 4
7: aload 4
invokevirtual org.graalvm.polyglot.Value.isBoolean:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
8: aload 4
invokevirtual org.graalvm.polyglot.Value.asBoolean:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
9: aload 3
ldc "js"
ldc "o[10]"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
astore 4
10: aload 4
invokevirtual org.graalvm.polyglot.Value.isString:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
11: ldc "foo"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: aload 3
ldc "js"
ldc "o.hasOwnProperty(11)"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
astore 4
13: aload 4
invokevirtual org.graalvm.polyglot.Value.isBoolean:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
14: aload 4
invokevirtual org.graalvm.polyglot.Value.asBoolean:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
15: aload 3
ldc "js"
ldc "o[11]"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
astore 4
16: aload 4
invokevirtual org.graalvm.polyglot.Value.isString:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
17: ldc "foo"
aload 4
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 4 18: aload 3
ifnull 24
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 24
StackMap locals: com.oracle.truffle.js.test.builtins.ArrayPrototypeBuiltins java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
19: astore 1
aload 3
ifnull 20
aload 3
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 3 StackMap locals:
StackMap stack:
20: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 2
aload 1
ifnonnull 22
aload 2
astore 1
goto 23
StackMap locals:
StackMap stack:
22: aload 1
aload 2
if_acmpeq 23
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 1
athrow
24: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/oracle/truffle/js/test/builtins/ArrayPrototypeBuiltins;
2 20 3 context Lorg/graalvm/polyglot/Context;
4 18 4 value Lorg/graalvm/polyglot/Value;
Exception table:
from to target type
2 18 19 any
1 21 21 any
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "ArrayPrototypeBuiltins.java"
InnerClasses:
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context