public class com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage extends com.oracle.truffle.api.instrumentation.test.InstrumentationTestLanguage
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage
super_class: com.oracle.truffle.api.instrumentation.test.InstrumentationTestLanguage
{
static int installInstrumentsCounter;
descriptor: I
flags: (0x0008) ACC_STATIC
static int createContextCounter;
descriptor: I
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
putstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.installInstrumentsCounter:I
1: iconst_0
putstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.createContextCounter:I
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.InstrumentationTestLanguage.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestLanguageInstrumentationLanguage;
private static void installInstruments(com.oracle.truffle.api.instrumentation.Instrumenter);
descriptor: (Lcom/oracle/truffle/api/instrumentation/Instrumenter;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.installInstrumentsCounter:I
iconst_1
iadd
putstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.installInstrumentsCounter:I
1: aload 0
invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTestLanguage.EXPRESSION:Ljava/lang/Class;
aastore
invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
new com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$1
dup
invokespecial com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$1.<init>:()V
invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
pop
2: aload 0
invokestatic com.oracle.truffle.api.instrumentation.SourceSectionFilter.newBuilder:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTestLanguage.STATEMENT:Ljava/lang/Class;
aastore
invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.tagIs:([Ljava/lang/Class;)Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter$Builder;
invokevirtual com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder.build:()Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;
new com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$2
dup
invokespecial com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$2.<init>:()V
invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachExecutionEventListener:(Lcom/oracle/truffle/api/instrumentation/SourceSectionFilter;Lcom/oracle/truffle/api/instrumentation/ExecutionEventListener;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
pop
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 instrumenter Lcom/oracle/truffle/api/instrumentation/Instrumenter;
MethodParameters:
Name Flags
instrumenter
protected com.oracle.truffle.api.instrumentation.test.InstrumentContext createContext(com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/instrumentation/test/InstrumentContext;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.createContextCounter:I
iconst_1
iadd
putstatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.createContextCounter:I
1: aload 1
ldc Lcom/oracle/truffle/api/instrumentation/Instrumenter;
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.instrumentation.Instrumenter
astore 2
start local 2 2: ldc "Instrumenter found"
aload 2
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/String;Ljava/lang/Object;)V
3: aload 2
invokestatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage.installInstruments:(Lcom/oracle/truffle/api/instrumentation/Instrumenter;)V
4: aload 0
aload 1
invokespecial com.oracle.truffle.api.instrumentation.test.InstrumentationTestLanguage.createContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/instrumentation/test/InstrumentContext;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestLanguageInstrumentationLanguage;
0 5 1 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
2 5 2 instrumenter Lcom/oracle/truffle/api/instrumentation/Instrumenter;
MethodParameters:
Name Flags
env
protected com.oracle.truffle.api.CallTarget parse(com.oracle.truffle.api.TruffleLanguage$ParsingRequest);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;)Lcom/oracle/truffle/api/CallTarget;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
new com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$3
dup
aload 0
aload 0
aload 1
invokespecial com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$3.<init>:(Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestLanguageInstrumentationLanguage;Lcom/oracle/truffle/api/TruffleLanguage;Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;)V
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestLanguageInstrumentationLanguage;
0 1 1 request Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;
MethodParameters:
Name Flags
request
}
SourceFile: "InstrumentationTest.java"
NestHost: com.oracle.truffle.api.instrumentation.test.InstrumentationTest
InnerClasses:
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public final ParsingRequest = com.oracle.truffle.api.TruffleLanguage$ParsingRequest of com.oracle.truffle.api.TruffleLanguage
public abstract Registration = com.oracle.truffle.api.TruffleLanguage$Registration of com.oracle.truffle.api.TruffleLanguage
public final Builder = com.oracle.truffle.api.instrumentation.SourceSectionFilter$Builder of com.oracle.truffle.api.instrumentation.SourceSectionFilter
public TestLanguageInstrumentationLanguage = com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage of com.oracle.truffle.api.instrumentation.test.InstrumentationTest
com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$1
com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$2
com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestLanguageInstrumentationLanguage$3
RuntimeVisibleAnnotations:
com.oracle.truffle.api.TruffleLanguage$Registration(id = "test-language-instrumentation-language", name = "", version = "")
com.oracle.truffle.api.instrumentation.ProvidedTags(value = {Lcom/oracle/truffle/api/instrumentation/StandardTags$ExpressionTag;, Lcom/oracle/truffle/api/instrumentation/StandardTags$StatementTag;})