comparison graal/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/FinalFieldTest.java @ 14628:a08b8694f556

Truffle: Node API changes deprecate adoptChild, no longer needed in constructor add Node#insert for inserting new nodes into the tree (previously adoptChild) add Node#adoptChildren() helper method that adopts all (direct and indirect) children of a node, automatically called in TruffleRuntime#createCallTarget
author Andreas Woess <andreas.woess@jku.at>
date Wed, 19 Mar 2014 23:11:46 +0100
parents df1d665ca846
children 64dcb92ee75a
comparison
equal deleted inserted replaced
14627:46c020971d9c 14628:a08b8694f556
58 CallTarget target = runtime.createCallTarget(rootNode); 58 CallTarget target = runtime.createCallTarget(rootNode);
59 Object result = target.call(); 59 Object result = target.call();
60 Assert.assertEquals(42, result); 60 Assert.assertEquals(42, result);
61 } 61 }
62 62
63 class TestRootNode extends RootNode { 63 private static class TestRootNode extends RootNode {
64 64
65 @Children TestChildNode[] children; 65 @Children private final TestChildNode[] children;
66 66
67 public TestRootNode(TestChildNode[] children) { 67 public TestRootNode(TestChildNode[] children) {
68 super(null); 68 super(null);
69 this.children = adoptChildren(children); 69 this.children = children;
70 } 70 }
71 71
72 @Override 72 @Override
73 public Object execute(VirtualFrame frame) { 73 public Object execute(VirtualFrame frame) {
74 int sum = 0; 74 int sum = 0;
77 } 77 }
78 return sum; 78 return sum;
79 } 79 }
80 } 80 }
81 81
82 class TestChildNode extends Node { 82 private static class TestChildNode extends Node {
83 83
84 private final int value; 84 private final int value;
85 85
86 public TestChildNode(int value) { 86 public TestChildNode(int value) {
87 super(null); 87 super(null);