Skip to content

Commit 0f532d6

Browse files
committed
[truffle] Cleanup node construction, get rid of unneded method
1 parent 87322c2 commit 0f532d6

File tree

2 files changed

+8
-18
lines changed

2 files changed

+8
-18
lines changed

src/vm/jvm/dsl/org/perl6/nqp/dsl/Processor.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,9 @@ private void writeParams(ExecutableElement executableElement, AstTypes astTypes,
109109
}
110110

111111
if (paramType.equals(astTypes.nodeClass)) {
112-
writer.append("build(node.at_pos_boxed(tc, " + (i+1) + "), scope, tc)");
112+
writer.append("tastToNode(node.at_pos_boxed(tc, " + (i+1) + "), scope, tc)");
113113
} else if (paramType.equals(astTypes.nodesClass)) {
114-
writer.append("expressions(node, " + (i+1) + ", scope, tc)");
114+
writer.append("tastToNodeArray(node, " + (i+1) + ", scope, tc)");
115115
} else if (paramType.equals(astTypes.intClass)) {
116116
writer.append("node.at_pos_boxed(tc, " + (i+1) + ").get_int(tc)");
117117
} else if (paramType.equals(astTypes.numClass)) {
@@ -139,7 +139,7 @@ private String getElementCall(ExecutableElement element) {
139139
}
140140

141141
private void writeBuildMethod(AstTypes astTypes, PrintWriter writer, RoundEnvironment roundEnv) {
142-
writer.append(" public NQPNode buildSimple(SixModelObject node, NQPScope scope, ThreadContext tc) {\n");
142+
writer.append(" public NQPNode tastToNode(SixModelObject node, NQPScope scope, ThreadContext tc) {\n");
143143

144144
writer.append(" switch (node.at_pos_boxed(tc, 0).get_str(tc)) {\n");
145145

@@ -179,7 +179,7 @@ private void writeBuildMethod(AstTypes astTypes, PrintWriter writer, RoundEnviro
179179
writer.append(");\n");
180180
}
181181

182-
writer.append(" default: return null;\n");
182+
writer.append(" default: throw new IllegalArgumentException(\"Wrong node type: \" + node.at_pos_boxed(tc, 0).get_str(tc));\n");
183183

184184
writer.append(" }\n");
185185

src/vm/jvm/runtime/org/perl6/nqp/truffle/TruffleCompiler.java

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -37,33 +37,23 @@
3737
abstract class TruffleCompiler {
3838
public void run(SixModelObject node, ThreadContext tc) {
3939
FrameDescriptor frameDescriptor = new FrameDescriptor();
40-
RootNode rootNode = new NQPRootNode(null, frameDescriptor, build(node, new NQPScopeWithFrame(frameDescriptor, null), tc));
40+
RootNode rootNode = new NQPRootNode(null, frameDescriptor, tastToNode(node, new NQPScopeWithFrame(frameDescriptor, null), tc));
4141

4242

4343
CallTarget callTarget = Truffle.getRuntime().createCallTarget(rootNode);
4444
callTarget.call();
4545
}
4646

47-
protected NQPNode[] expressions(SixModelObject node, int from, NQPScope scope, ThreadContext tc) {
47+
protected NQPNode[] tastToNodeArray(SixModelObject node, int from, NQPScope scope, ThreadContext tc) {
4848
int elems = (int) node.elems(tc);
4949
NQPNode children[] = new NQPNode[elems - from];
5050
for (int i = from; i < elems; i++) {
51-
children[i-from] = build(node.at_pos_boxed(tc, i), scope, tc);
51+
children[i-from] = tastToNode(node.at_pos_boxed(tc, i), scope, tc);
5252
}
5353
return children;
5454
}
5555

56-
abstract protected NQPNode buildSimple(SixModelObject node, NQPScope scope, ThreadContext tc);
57-
58-
public NQPNode build(SixModelObject node, NQPScope scope, ThreadContext tc) {
59-
NQPNode trySimple = buildSimple(node, scope, tc);
60-
if (trySimple != null) return trySimple;
61-
62-
switch (node.at_pos_boxed(tc, 0).get_str(tc)) {
63-
default:
64-
throw new IllegalArgumentException("Wrong node type: " + node.at_pos_boxed(tc, 0).get_str(tc));
65-
}
66-
}
56+
abstract protected NQPNode tastToNode(SixModelObject node, NQPScope scope, ThreadContext tc);
6757

6858
@Predeserializer("block")
6959
public static NQPScope createNewScope(NQPScope scope) {

0 commit comments

Comments
 (0)