class com.oracle.truffle.api.test.StackTraceTest$1$1 implements com.oracle.truffle.api.frame.FrameInstanceVisitor<java.lang.Object>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.test.StackTraceTest$1$1
super_class: java.lang.Object
{
final com.oracle.truffle.api.test.StackTraceTest$1 this$1;
descriptor: Lcom/oracle/truffle/api/test/StackTraceTest$1;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.test.StackTraceTest$1);
descriptor: (Lcom/oracle/truffle/api/test/StackTraceTest$1;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // com.oracle.truffle.api.test.StackTraceTest$1$1 this
0: .line 175
aload 0 /* this */
aload 1
putfield com.oracle.truffle.api.test.StackTraceTest$1$1.this$1:Lcom/oracle/truffle/api/test/StackTraceTest$1;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.oracle.truffle.api.test.StackTraceTest$1$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/test/StackTraceTest$1$1;
MethodParameters:
Name Flags
this$0 final
public java.lang.Object visitFrame(com.oracle.truffle.api.frame.FrameInstance);
descriptor: (Lcom/oracle/truffle/api/frame/FrameInstance;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 // com.oracle.truffle.api.test.StackTraceTest$1$1 this
start local 1 // com.oracle.truffle.api.frame.FrameInstance frameInstance
0: .line 179
aload 1 /* frameInstance */
getstatic com.oracle.truffle.api.frame.FrameInstance$FrameAccess.READ_ONLY:Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;
invokeinterface com.oracle.truffle.api.frame.FrameInstance.getFrame:(Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;)Lcom/oracle/truffle/api/frame/Frame;
astore 2 /* readOnlyFrame */
start local 2 // com.oracle.truffle.api.frame.Frame readOnlyFrame
1: .line 180
aload 2 /* readOnlyFrame */
invokeinterface com.oracle.truffle.api.frame.Frame.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
ldc "demo"
invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.findFrameSlot:(Ljava/lang/Object;)Lcom/oracle/truffle/api/frame/FrameSlot;
astore 3 /* slot */
start local 3 // com.oracle.truffle.api.frame.FrameSlot slot
2: .line 181
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 2 /* readOnlyFrame */
aload 3 /* slot */
invokeinterface com.oracle.truffle.api.frame.Frame.getValue:(Lcom/oracle/truffle/api/frame/FrameSlot;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
3: .line 183
aload 1 /* frameInstance */
getstatic com.oracle.truffle.api.frame.FrameInstance$FrameAccess.READ_WRITE:Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;
invokeinterface com.oracle.truffle.api.frame.FrameInstance.getFrame:(Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;)Lcom/oracle/truffle/api/frame/Frame;
astore 4 /* readWriteFrame */
start local 4 // com.oracle.truffle.api.frame.Frame readWriteFrame
4: .line 184
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 4 /* readWriteFrame */
aload 3 /* slot */
invokeinterface com.oracle.truffle.api.frame.Frame.getValue:(Lcom/oracle/truffle/api/frame/FrameSlot;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: .line 185
aload 4 /* readWriteFrame */
aload 3 /* slot */
bipush 43
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
6: .line 187
aload 1 /* frameInstance */
getstatic com.oracle.truffle.api.frame.FrameInstance$FrameAccess.MATERIALIZE:Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;
invokeinterface com.oracle.truffle.api.frame.FrameInstance.getFrame:(Lcom/oracle/truffle/api/frame/FrameInstance$FrameAccess;)Lcom/oracle/truffle/api/frame/Frame;
astore 5 /* materializedFrame */
start local 5 // com.oracle.truffle.api.frame.Frame materializedFrame
7: .line 188
bipush 43
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 5 /* materializedFrame */
aload 3 /* slot */
invokeinterface com.oracle.truffle.api.frame.Frame.getValue:(Lcom/oracle/truffle/api/frame/FrameSlot;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: .line 190
aload 5 /* materializedFrame */
aload 3 /* slot */
bipush 44
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
9: .line 191
bipush 44
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 2 /* readOnlyFrame */
aload 3 /* slot */
invokeinterface com.oracle.truffle.api.frame.Frame.getValue:(Lcom/oracle/truffle/api/frame/FrameSlot;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: .line 192
bipush 44
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 4 /* readWriteFrame */
aload 3 /* slot */
invokeinterface com.oracle.truffle.api.frame.Frame.getValue:(Lcom/oracle/truffle/api/frame/FrameSlot;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
11: .line 194
aconst_null
areturn
end local 5 // com.oracle.truffle.api.frame.Frame materializedFrame
end local 4 // com.oracle.truffle.api.frame.Frame readWriteFrame
end local 3 // com.oracle.truffle.api.frame.FrameSlot slot
end local 2 // com.oracle.truffle.api.frame.Frame readOnlyFrame
end local 1 // com.oracle.truffle.api.frame.FrameInstance frameInstance
end local 0 // com.oracle.truffle.api.test.StackTraceTest$1$1 this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/truffle/api/test/StackTraceTest$1$1;
0 12 1 frameInstance Lcom/oracle/truffle/api/frame/FrameInstance;
1 12 2 readOnlyFrame Lcom/oracle/truffle/api/frame/Frame;
2 12 3 slot Lcom/oracle/truffle/api/frame/FrameSlot;
4 12 4 readWriteFrame Lcom/oracle/truffle/api/frame/Frame;
7 12 5 materializedFrame Lcom/oracle/truffle/api/frame/Frame;
MethodParameters:
Name Flags
frameInstance
}
Signature: Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameInstanceVisitor<Ljava/lang/Object;>;
SourceFile: "StackTraceTest.java"
EnclosingMethod: com.oracle.truffle.api.test.StackTraceTest$1.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
NestHost: com.oracle.truffle.api.test.StackTraceTest
InnerClasses:
public final FrameAccess = com.oracle.truffle.api.frame.FrameInstance$FrameAccess of com.oracle.truffle.api.frame.FrameInstance
com.oracle.truffle.api.test.StackTraceTest$1
com.oracle.truffle.api.test.StackTraceTest$1$1