comparison graal/com.oracle.truffle.api.dsl.test/src/com/oracle/truffle/api/dsl/test/TestHelper.java @ 19289:62c43fcf5be2

Truffle-DSL: implement @Cached and fixes for the new guard expression syntax.
author Christian Humer <christian.humer@gmail.com>
date Tue, 03 Feb 2015 15:07:07 +0100
parents c5db657d93c1
children 476374f3fe9a
comparison
equal deleted inserted replaced
19288:3a37116ef37f 19289:62c43fcf5be2
80 return createCallTarget(new TestRootNode<>(node)); 80 return createCallTarget(new TestRootNode<>(node));
81 } 81 }
82 82
83 static CallTarget createCallTarget(TestRootNode<? extends ValueNode> node) { 83 static CallTarget createCallTarget(TestRootNode<? extends ValueNode> node) {
84 return Truffle.getRuntime().createCallTarget(node); 84 return Truffle.getRuntime().createCallTarget(node);
85 }
86
87 static RootCallTarget createCallTarget(NodeFactory<? extends ValueNode> factory, Object... constants) {
88 return Truffle.getRuntime().createCallTarget(createRoot(factory, constants));
89 }
90
91 static boolean assertionsEnabled() {
92 boolean assertOn = false;
93 // *assigns* true if assertions are on.
94 assert (assertOn = true) == true;
95 return assertOn;
96 }
97
98 @SuppressWarnings("unchecked")
99 static <T extends ValueNode> T getNode(CallTarget target) {
100 return ((TestRootNode<T>) ((RootCallTarget) target).getRootNode()).getNode();
85 } 101 }
86 102
87 static <E> Object executeWith(TestRootNode<? extends ValueNode> node, Object... values) { 103 static <E> Object executeWith(TestRootNode<? extends ValueNode> node, Object... values) {
88 return createCallTarget(node).call(values); 104 return createCallTarget(node).call(values);
89 } 105 }