class com.oracle.truffle.api.test.ChildNodeTest$TestSubNode extends com.oracle.truffle.api.test.ChildNodeTest$TestBaseNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.test.ChildNodeTest$TestSubNode
super_class: com.oracle.truffle.api.test.ChildNodeTest$TestBaseNode
{
private com.oracle.truffle.api.nodes.Node child;
descriptor: Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private final com.oracle.truffle.api.nodes.Node[] children;
descriptor: [Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Children()
final com.oracle.truffle.api.test.ChildNodeTest this$0;
descriptor: Lcom/oracle/truffle/api/test/ChildNodeTest;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.test.ChildNodeTest);
descriptor: (Lcom/oracle/truffle/api/test/ChildNodeTest;)V
flags: (0x0000)
Code:
stack=8, locals=2, args_size=2
start local 0 // com.oracle.truffle.api.test.ChildNodeTest$TestSubNode this
0: .line 166
aload 0 /* this */
aload 1
putfield com.oracle.truffle.api.test.ChildNodeTest$TestSubNode.this$0:Lcom/oracle/truffle/api/test/ChildNodeTest;
aload 0 /* this */
aload 1
invokespecial com.oracle.truffle.api.test.ChildNodeTest$TestBaseNode.<init>:(Lcom/oracle/truffle/api/test/ChildNodeTest;)V
1: .line 168
aload 0 /* this */
new com.oracle.truffle.api.test.ChildNodeTest$TestChildNode
dup
aload 1
iconst_2
invokespecial com.oracle.truffle.api.test.ChildNodeTest$TestChildNode.<init>:(Lcom/oracle/truffle/api/test/ChildNodeTest;I)V
putfield com.oracle.truffle.api.test.ChildNodeTest$TestSubNode.child:Lcom/oracle/truffle/api/nodes/Node;
2: .line 169
aload 0 /* this */
iconst_1
anewarray com.oracle.truffle.api.nodes.Node
dup
iconst_0
new com.oracle.truffle.api.test.ChildNodeTest$TestChildNode
dup
aload 1
iconst_3
invokespecial com.oracle.truffle.api.test.ChildNodeTest$TestChildNode.<init>:(Lcom/oracle/truffle/api/test/ChildNodeTest;I)V
aastore
putfield com.oracle.truffle.api.test.ChildNodeTest$TestSubNode.children:[Lcom/oracle/truffle/api/nodes/Node;
3: .line 166
return
end local 0 // com.oracle.truffle.api.test.ChildNodeTest$TestSubNode this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/test/ChildNodeTest$TestSubNode;
MethodParameters:
Name Flags
this$0 final
public com.oracle.truffle.api.nodes.Node getChild(int);
descriptor: (I)Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // com.oracle.truffle.api.test.ChildNodeTest$TestSubNode this
start local 1 // int index
0: .line 173
iload 1 /* index */
iconst_2
if_icmpne 2
1: .line 174
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildNodeTest$TestSubNode.child:Lcom/oracle/truffle/api/nodes/Node;
areturn
2: .line 175
StackMap locals:
StackMap stack:
iload 1 /* index */
iconst_3
if_icmpne 4
3: .line 176
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildNodeTest$TestSubNode.children:[Lcom/oracle/truffle/api/nodes/Node;
iconst_0
aaload
areturn
4: .line 178
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* index */
invokespecial com.oracle.truffle.api.test.ChildNodeTest$TestBaseNode.getChild:(I)Lcom/oracle/truffle/api/nodes/Node;
areturn
end local 1 // int index
end local 0 // com.oracle.truffle.api.test.ChildNodeTest$TestSubNode this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/test/ChildNodeTest$TestSubNode;
0 5 1 index I
MethodParameters:
Name Flags
index
}
SourceFile: "ChildNodeTest.java"
NestHost: com.oracle.truffle.api.test.ChildNodeTest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
public abstract Children = com.oracle.truffle.api.nodes.Node$Children of com.oracle.truffle.api.nodes.Node
TestBaseNode = com.oracle.truffle.api.test.ChildNodeTest$TestBaseNode of com.oracle.truffle.api.test.ChildNodeTest
TestChildNode = com.oracle.truffle.api.test.ChildNodeTest$TestChildNode of com.oracle.truffle.api.test.ChildNodeTest
TestSubNode = com.oracle.truffle.api.test.ChildNodeTest$TestSubNode of com.oracle.truffle.api.test.ChildNodeTest