class com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode extends com.oracle.truffle.api.nodes.Node implements com.oracle.truffle.api.nodes.RepeatingNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode
super_class: com.oracle.truffle.api.nodes.Node
{
private com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode bodyNode;
descriptor: Lcom/oracle/truffle/api/test/LoopNodeTest$GuestLanguageNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
final com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode this$1;
descriptor: Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode, com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode);
descriptor: (Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode;Lcom/oracle/truffle/api/test/LoopNodeTest$GuestLanguageNode;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
start local 2 // com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode bodyNode
0: .line 301
aload 0 /* this */
aload 1
putfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode.this$1:Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode;
aload 0 /* this */
invokespecial com.oracle.truffle.api.nodes.Node.<init>:()V
1: .line 302
aload 0 /* this */
aload 2 /* bodyNode */
putfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode.bodyNode:Lcom/oracle/truffle/api/test/LoopNodeTest$GuestLanguageNode;
2: .line 303
return
end local 2 // com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode bodyNode
end local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode;
0 3 2 bodyNode Lcom/oracle/truffle/api/test/LoopNodeTest$GuestLanguageNode;
MethodParameters:
Name Flags
this$0 final
bodyNode
public boolean executeRepeating(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
0: .line 307
new java.lang.RuntimeException
dup
ldc "This method will not be called."
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
end local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
public java.lang.Object executeRepeatingWithValue(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
0: .line 312
aload 0 /* this */
getfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode.bodyNode:Lcom/oracle/truffle/api/test/LoopNodeTest$GuestLanguageNode;
aload 1 /* frame */
invokevirtual com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 2 /* result */
start local 2 // java.lang.Object result
1: .line 313
aload 2 /* result */
getstatic com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode.CONTINUE_LOOP_STATUS:Ljava/lang/Object;
if_acmpne 3
2: .line 314
aload 0 /* this */
getfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode.this$1:Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode;
dup
getfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode.continues:I
iconst_1
iadd
putfield com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode.continues:I
3: .line 316
StackMap locals: java.lang.Object
StackMap stack:
aload 2 /* result */
areturn
end local 2 // java.lang.Object result
end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
end local 0 // com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/test/LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode;
0 4 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 4 2 result Ljava/lang/Object;
MethodParameters:
Name Flags
frame
}
SourceFile: "LoopNodeTest.java"
NestHost: com.oracle.truffle.api.test.LoopNodeTest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
private abstract GuestLanguageNode = com.oracle.truffle.api.test.LoopNodeTest$GuestLanguageNode of com.oracle.truffle.api.test.LoopNodeTest
private TestWhileWithValueNode = com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode of com.oracle.truffle.api.test.LoopNodeTest
private WhileWithValueRepeatingNode = com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode$WhileWithValueRepeatingNode of com.oracle.truffle.api.test.LoopNodeTest$TestWhileWithValueNode