class com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester implements com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
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/api/instrumentation/test/VariablesScopeLegacyTest$CustomScopeTester;
public boolean isTestOnRoot();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScopeTester;
public void doTestScope(com.oracle.truffle.api.instrumentation.TruffleInstrument$Env, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/VirtualFrame;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
instanceof com.oracle.truffle.api.nodes.RootNode
ifeq 11
1: aload 1
aload 2
aconst_null
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.findLocalScopes:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
astore 4
start local 4 2: aload 4
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
start local 5 3: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 6
start local 6 5: ldc "V1"
invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 6
invokevirtual com.oracle.truffle.api.Scope.getVariables:()Ljava/lang/Object;
ldc "value"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: goto 9
StackMap locals: com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester com.oracle.truffle.api.instrumentation.TruffleInstrument$Env com.oracle.truffle.api.nodes.Node com.oracle.truffle.api.frame.VirtualFrame java.lang.Iterable java.util.Iterator com.oracle.truffle.api.Scope
StackMap stack: com.oracle.truffle.api.interop.InteropException
7: astore 7
start local 7 8: aload 7
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 7 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
10: return
end local 6 end local 5 end local 4 11: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope.LAST_INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScope;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
12: aload 1
aload 2
aconst_null
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.findLocalScopes:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
astore 4
start local 4 13: aload 4
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
start local 5 14: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope.LAST_INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScope;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
15: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
16: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 6
start local 6 17: aload 6
aconst_null
iconst_1
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
18: aload 1
aload 2
aload 3
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.findLocalScopes:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
astore 7
start local 7 19: aload 7
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 8
start local 8 20: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 9
start local 9 21: aload 9
aload 3
iconst_1
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
22: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
23: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 6
24: aload 6
aconst_null
iconst_0
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
25: aload 8
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
26: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 9
27: aload 9
aload 3
iconst_0
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
28: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
29: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 6
30: aload 6
aconst_null
iconst_0
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
31: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
32: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 6
33: aload 6
aconst_null
iconst_0
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.testScopeContent:(Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
34: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
35: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
pop
36: invokestatic org.junit.Assert.fail:()V
37: goto 39
StackMap locals: com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester com.oracle.truffle.api.instrumentation.TruffleInstrument$Env com.oracle.truffle.api.nodes.Node com.oracle.truffle.api.frame.VirtualFrame java.lang.Iterable java.util.Iterator com.oracle.truffle.api.Scope java.lang.Iterable java.util.Iterator com.oracle.truffle.api.Scope
StackMap stack: java.lang.Exception
38: pop
39: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.doTestTopScope:(Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;)V
40: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScopeTester;
0 41 1 env Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
0 41 2 node Lcom/oracle/truffle/api/nodes/Node;
0 41 3 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
2 11 4 lscopes Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
3 11 5 literator Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
5 11 6 lscope Lcom/oracle/truffle/api/Scope;
8 9 7 e Lcom/oracle/truffle/api/interop/InteropException;
13 41 4 lscopes Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
14 41 5 literator Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
17 41 6 lscope Lcom/oracle/truffle/api/Scope;
19 41 7 dscopes Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
20 41 8 diterator Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
21 41 9 dscope Lcom/oracle/truffle/api/Scope;
Exception table:
from to target type
5 6 7 Class com.oracle.truffle.api.interop.InteropException
35 37 38 Class java.lang.Exception
MethodParameters:
Name Flags
env
node
frame
private static void testScopeContent(com.oracle.truffle.api.Scope, com.oracle.truffle.api.frame.Frame, boolean);
descriptor: (Lcom/oracle/truffle/api/Scope;Lcom/oracle/truffle/api/frame/Frame;Z)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: ldc "CustomScope.getName"
aload 0
invokevirtual com.oracle.truffle.api.Scope.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
1: aload 1
ifnonnull 4
2: ldc "V1"
invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.Scope.getVariables:()Ljava/lang/Object;
ldc "value"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
3: goto 5
4: StackMap locals:
StackMap stack:
ldc "V1V2V3"
invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.Scope.getVariables:()Ljava/lang/Object;
ldc "value"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
aload 1
ifnonnull 8
6: ldc "A1"
invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.Scope.getArguments:()Ljava/lang/Object;
ldc "value"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: goto 9
8: StackMap locals:
StackMap stack:
ldc "A1A2A3"
invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.Scope.getArguments:()Ljava/lang/Object;
ldc "value"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
9: StackMap locals:
StackMap stack:
ldc "THIS"
aload 0
invokevirtual com.oracle.truffle.api.Scope.getReceiverName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: iload 2
ifeq 13
11: ldc "thisValue"
aload 0
invokevirtual com.oracle.truffle.api.Scope.getReceiver:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
12: goto 17
13: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.Scope.getReceiver:()Ljava/lang/Object;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
14: goto 17
StackMap locals:
StackMap stack: com.oracle.truffle.api.interop.InteropException
15: astore 3
start local 3 16: aload 3
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 3 17: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 scope Lcom/oracle/truffle/api/Scope;
0 18 1 frame Lcom/oracle/truffle/api/frame/Frame;
0 18 2 hasReceiver Z
16 17 3 e Lcom/oracle/truffle/api/interop/InteropException;
Exception table:
from to target type
1 14 15 Class com.oracle.truffle.api.interop.InteropException
MethodParameters:
Name Flags
scope
frame
hasReceiver
private static void doTestTopScope(com.oracle.truffle.api.instrumentation.TruffleInstrument$Env);
descriptor: (Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
ldc "test-custom-variables-scope-legacy-language"
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.findTopScopes:(Ljava/lang/String;)Ljava/lang/Iterable;
astore 1
start local 1 1: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 2
start local 2 2: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
3: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.Scope
astore 3
start local 3 4: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
invokestatic org.junit.Assert.assertFalse:(Z)V
5: ldc "TopCustomScope"
aload 3
invokevirtual com.oracle.truffle.api.Scope.getName:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 3
invokevirtual com.oracle.truffle.api.Scope.getNode:()Lcom/oracle/truffle/api/nodes/Node;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
7: aload 3
invokevirtual com.oracle.truffle.api.Scope.getArguments:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.interop.TruffleObject
astore 4
start local 4 8: aload 3
invokevirtual com.oracle.truffle.api.Scope.getVariables:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.interop.TruffleObject
astore 5
start local 5 9: aload 4
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
10: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 5
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasMembers:(Ljava/lang/Object;)Z
invokestatic org.junit.Assert.assertTrue:(Z)V
11: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 env Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
1 12 1 topScopes Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
2 12 2 iterator Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
4 12 3 topScope Lcom/oracle/truffle/api/Scope;
8 12 4 arguments Lcom/oracle/truffle/api/interop/TruffleObject;
9 12 5 variables Lcom/oracle/truffle/api/interop/TruffleObject;
MethodParameters:
Name Flags
env
}
SourceFile: "VariablesScopeLegacyTest.java"
NestHost: com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
InnerClasses:
public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument
private CustomScope = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
private CustomScopeTester = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
public TestScopeLegacyInstrument = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
abstract Tester = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument