class com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1 extends com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1
super_class: com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier
{
private final org.graalvm.polyglot.Context val$context;
descriptor: Lorg/graalvm/polyglot/Context;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.polyglot.tck.ResultVerifier, org.graalvm.polyglot.Context);
descriptor: (Lorg/graalvm/polyglot/tck/ResultVerifier;Lorg/graalvm/polyglot/Context;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1 this
start local 1 // org.graalvm.polyglot.tck.ResultVerifier $anonymous0
0: .line 545
aload 0 /* this */
aload 2
putfield com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1.val$context:Lorg/graalvm/polyglot/Context;
aload 0 /* this */
aload 1 /* $anonymous0 */
invokespecial com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier.<init>:(Lorg/graalvm/polyglot/tck/ResultVerifier;)V
return
end local 1 // org.graalvm.polyglot.tck.ResultVerifier $anonymous0
end local 0 // com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/test/sdk/tck/JavaScriptTCKLanguageProvider$JavaScriptVerifier$1;
0 1 1 $anonymous0 Lorg/graalvm/polyglot/tck/ResultVerifier;
MethodParameters:
Name Flags
$anonymous0
val$context final
public void accept(org.graalvm.polyglot.tck.ResultVerifier$SnippetRun);
descriptor: (Lorg/graalvm/polyglot/tck/ResultVerifier$SnippetRun;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 // com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1 this
start local 1 // org.graalvm.polyglot.tck.ResultVerifier$SnippetRun snippetRun
0: .line 548
aload 1 /* snippetRun */
invokevirtual org.graalvm.polyglot.tck.ResultVerifier$SnippetRun.getException:()Lorg/graalvm/polyglot/PolyglotException;
ifnull 11
1: .line 549
aload 1 /* snippetRun */
invokevirtual org.graalvm.polyglot.tck.ResultVerifier$SnippetRun.getParameters:()Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Value
astore 2 /* param */
start local 2 // org.graalvm.polyglot.Value param
2: .line 550
aload 0 /* this */
getfield com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1.val$context:Lorg/graalvm/polyglot/Context;
ldc "js"
ldc "Object"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
aload 2 /* param */
invokevirtual org.graalvm.polyglot.Value.isMetaInstance:(Ljava/lang/Object;)Z
istore 3 /* jsObject */
start local 3 // boolean jsObject
3: .line 551
iconst_0
istore 4 /* hasIterator */
start local 4 // boolean hasIterator
4: .line 553
aload 0 /* this */
getfield com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1.val$context:Lorg/graalvm/polyglot/Context;
ldc "js"
ldc "(function(a) {return a[Symbol.iterator];})"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2 /* param */
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.isNull:()Z
ifeq 5
iconst_0
goto 6
StackMap locals: org.graalvm.polyglot.Value int int
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 4 /* hasIterator */
7: .line 554
goto 9
StackMap locals:
StackMap stack: java.lang.Exception
8: pop
9: .line 556
StackMap locals:
StackMap stack:
iload 3 /* jsObject */
ifeq 11
iload 4 /* hasIterator */
ifne 11
10: .line 558
return
end local 4 // boolean hasIterator
end local 3 // boolean jsObject
end local 2 // org.graalvm.polyglot.Value param
11: .line 561
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* snippetRun */
invokespecial com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier.accept:(Lorg/graalvm/polyglot/tck/ResultVerifier$SnippetRun;)V
12: .line 562
return
end local 1 // org.graalvm.polyglot.tck.ResultVerifier$SnippetRun snippetRun
end local 0 // com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1 this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/oracle/truffle/js/test/sdk/tck/JavaScriptTCKLanguageProvider$JavaScriptVerifier$1;
0 13 1 snippetRun Lorg/graalvm/polyglot/tck/ResultVerifier$SnippetRun;
2 11 2 param Lorg/graalvm/polyglot/Value;
3 11 3 jsObject Z
4 11 4 hasIterator Z
Exception table:
from to target type
4 7 8 Class java.lang.Exception
Exceptions:
throws org.graalvm.polyglot.PolyglotException
MethodParameters:
Name Flags
snippetRun
}
SourceFile: "JavaScriptTCKLanguageProvider.java"
EnclosingMethod: com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier.foreignOrHasIteratorVerifier:(Lorg/graalvm/polyglot/Context;Lorg/graalvm/polyglot/tck/ResultVerifier;)Lorg/graalvm/polyglot/tck/ResultVerifier;
NestHost: com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider
InnerClasses:
private JavaScriptVerifier = com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier of com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider
com.oracle.truffle.js.test.sdk.tck.JavaScriptTCKLanguageProvider$JavaScriptVerifier$1
public final SnippetRun = org.graalvm.polyglot.tck.ResultVerifier$SnippetRun of org.graalvm.polyglot.tck.ResultVerifier