public class com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest extends com.oracle.truffle.api.instrumentation.test.AbstractInstrumentationTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
super_class: com.oracle.truffle.api.instrumentation.test.AbstractInstrumentationTest
{
private static final com.oracle.truffle.api.interop.InteropLibrary INTEROP;
descriptor: Lcom/oracle/truffle/api/interop/InteropLibrary;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getUncached:()Lcom/oracle/truffle/api/interop/InteropLibrary;
putstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.instrumentation.test.AbstractInstrumentationTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest;
public void testDefaultScope();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.engine:Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.getInstruments:()Ljava/util/Map;
ldc "testVariablesScopeLegacyInstrument"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Instrument
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.assureEnabled:(Lorg/graalvm/polyglot/Instrument;)V
1: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
new com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$DefaultScopeTester
dup
invokespecial com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$DefaultScopeTester.<init>:()V
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.setTester:(Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester;)V
2: aload 0
ldc "ROOT(DEFINE(\ntestFunction,ROOT(\nVARIABLE(a, 10),\nVARIABLE(b, 20),\nSTATEMENT)),\nCALL(testFunction))"
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.run:(Ljava/lang/String;)Ljava/lang/String;
pop
3: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.checkForFailure:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest;
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
private static int getKeySize(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getMembers:(Ljava/lang/Object;)Ljava/lang/Object;
astore 1
start local 1 1: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getArraySize:(Ljava/lang/Object;)J
l2i
2: ireturn
end local 1 3: StackMap locals:
StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
astore 1
start local 1 4: aload 1
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 object Ljava/lang/Object;
1 3 1 keys Ljava/lang/Object;
4 5 1 e Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
Exception table:
from to target type
0 2 3 Class com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
object
private static boolean contains(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberReadable:(Ljava/lang/Object;Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 object Ljava/lang/Object;
0 1 1 key Ljava/lang/String;
MethodParameters:
Name Flags
object
key
private static java.lang.Object read(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: com.oracle.truffle.api.interop.InteropException
astore 2
start local 2 3: aload 2
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 object Ljava/lang/Object;
0 4 1 key Ljava/lang/String;
3 4 2 e Lcom/oracle/truffle/api/interop/InteropException;
Exception table:
from to target type
0 1 2 Class com.oracle.truffle.api.interop.UnknownIdentifierException
0 1 2 Class com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
object
key
private static boolean isNull(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isNull:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 object Ljava/lang/Object;
MethodParameters:
Name Flags
object
public void testSPIScopeCalls();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: ldc "test-custom-variables-scope-legacy-language"
ldc "test"
invokestatic org.graalvm.polyglot.Source.create:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Source;
astore 1
start local 1 1: aload 0
aload 0
getfield com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.engine:Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Engine.getInstruments:()Ljava/util/Map;
ldc "testVariablesScopeLegacyInstrument"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Instrument
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.assureEnabled:(Lorg/graalvm/polyglot/Instrument;)V
2: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
new com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester
dup
invokespecial com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester.<init>:()V
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.setTester:(Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester;)V
3: aload 0
getfield com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.context:Lorg/graalvm/polyglot/Context;
aload 1
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
4: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.checkForFailure:()V
5: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
new com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLibraryTester
dup
invokespecial com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLibraryTester.<init>:()V
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.setTester:(Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester;)V
6: aload 0
getfield com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest.context:Lorg/graalvm/polyglot/Context;
aload 1
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
7: getstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
invokevirtual com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.checkForFailure:()V
end local 1 8: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 2
10: aconst_null
putstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
11: aconst_null
putstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope.LAST_INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScope;
12: aload 2
athrow
13: StackMap locals:
StackMap stack:
aconst_null
putstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument.INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$TestScopeLegacyInstrument;
14: aconst_null
putstatic com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope.LAST_INSTANCE:Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest$CustomScope;
15: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/oracle/truffle/api/instrumentation/test/VariablesScopeLegacyTest;
1 8 1 source Lorg/graalvm/polyglot/Source;
Exception table:
from to target type
0 9 9 any
Exceptions:
throws java.lang.Throwable
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "VariablesScopeLegacyTest.java"
NestMembers:
com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$1 com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$1$1 com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$CustomRoot com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$CustomRootBlockLegacyNode com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$CustomScopeLegacyNode com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage$TopScopeJavaObject com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLibraryTester com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeTester com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$DefaultScopeTester com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestLegacyObject com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestLegacyObject$LegacyMembers com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument$1 com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestScopeLegacyInstrument$Tester
InnerClasses:
private CustomScope = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScope of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
public CustomScopeLegacyLanguage = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLegacyLanguage of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
private CustomScopeLibraryTester = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$CustomScopeLibraryTester 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
private DefaultScopeTester = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$DefaultScopeTester of com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest
final TestLegacyObject = com.oracle.truffle.api.instrumentation.test.VariablesScopeLegacyTest$TestLegacyObject 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