class com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent
super_class: java.lang.Object
{
private final java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;
private final com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest test;
descriptor: Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest, java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>);
descriptor: (Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;Ljava/lang/Class;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
2: aload 0
aload 1
putfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
0 4 1 test Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
0 4 2 tag Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;
Signature: (Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;)V
MethodParameters:
Name Flags
test
tag
com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent input(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
flags: (0x0000)
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 2
start local 2 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.INPUT:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 2
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: aload 1
instanceof java.lang.Number
ifeq 6
3: aload 2
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
instanceof java.lang.Number
invokestatic org.junit.Assert.assertTrue:(Z)V
4: aload 1
checkcast java.lang.Number
invokevirtual java.lang.Number.doubleValue:()D
aload 2
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
checkcast java.lang.Number
invokevirtual java.lang.Number.doubleValue:()D
dconst_0
invokestatic org.junit.Assert.assertEquals:(DDD)V
5: goto 7
6: StackMap locals: com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event
StackMap stack:
aload 1
aload 2
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: StackMap locals:
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
0 8 1 value Ljava/lang/Object;
1 8 2 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
MethodParameters:
Name Flags
value
com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent input();
descriptor: ()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 1
start local 1 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.INPUT:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 1
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
1 3 1 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent input(java.util.function.Consumer<com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event>);
descriptor: (Ljava/util/function/Consumer;)Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 2
start local 2 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.INPUT:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 2
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: aload 1
aload 2
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
3: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
0 4 1 verify Ljava/util/function/Consumer<Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;>;
1 4 2 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
Signature: (Ljava/util/function/Consumer<Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;>;)Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
MethodParameters:
Name Flags
verify
void exit();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 1
start local 1 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 1
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
1 3 1 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
void exitExceptional();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 1
start local 1 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN_EXCEPTIONAL:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 1
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
1 3 1 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
void exitMaybeControlFlowException();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 1
start local 1 1: aload 1
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.kind:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
if_acmpne 4
2: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 1
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
3: goto 8
StackMap locals: com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event
StackMap stack:
4: aload 1
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.kind:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN_EXCEPTIONAL:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
if_acmpne 7
5: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN_EXCEPTIONAL:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 1
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
6: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.$assertionsDisabled:Z
ifne 8
aload 1
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
instanceof com.oracle.truffle.js.nodes.control.YieldException
ifne 8
aload 1
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
instanceof com.oracle.truffle.js.nodes.control.ReturnException
ifne 8
new java.lang.AssertionError
dup
aload 1
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event.val:Ljava/lang/Object;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.$assertionsDisabled:Z
ifne 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
1 9 1 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
void exit(java.util.function.Consumer<com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event>);
descriptor: (Ljava/util/function/Consumer;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.test:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest;
invokevirtual com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.getNextEvent:()Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
astore 2
start local 2 1: getstatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind.RETURN:Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;
aload 0
getfield com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent.tag:Ljava/lang/Class;
aload 2
invokestatic com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest.assertKindTag:(Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event$Kind;Ljava/lang/Class;Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;)V
2: aload 1
aload 2
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$AssertedEvent;
0 4 1 verify Ljava/util/function/Consumer<Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;>;
1 4 2 event Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;
Signature: (Ljava/util/function/Consumer<Lcom/oracle/truffle/js/test/instrumentation/FineGrainedAccessTest$Event;>;)V
MethodParameters:
Name Flags
verify
}
SourceFile: "FineGrainedAccessTest.java"
NestHost: com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest
InnerClasses:
AssertedEvent = com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$AssertedEvent of com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest
protected Event = com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event of com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest
final Kind = com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event$Kind of com.oracle.truffle.js.test.instrumentation.FineGrainedAccessTest$Event