changeset 11541:189baa5ea5f0

Truffle-DSL: extensions to the CodeTreeBuilder.
author Christian Humer <christian.humer@gmail.com>
date Fri, 06 Sep 2013 16:08:31 +0200
parents 231958c9ddf9
children f15d955897b7
files graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/ast/CodeTreeBuilder.java
diffstat 1 files changed, 10 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/ast/CodeTreeBuilder.java	Mon Sep 02 20:44:49 2013 +0200
+++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/ast/CodeTreeBuilder.java	Fri Sep 06 16:08:31 2013 +0200
@@ -165,14 +165,18 @@
     }
 
     public CodeTreeBuilder startCall(String callSite) {
-        return startCall(null, callSite);
+        return startCall((CodeTree) null, callSite);
     }
 
     public CodeTreeBuilder startCall(String receiver, String callSite) {
+        return startCall(singleString(receiver), callSite);
+    }
+
+    public CodeTreeBuilder startCall(CodeTree receiver, String callSite) {
         if (receiver == null) {
             return startGroup().string(callSite).startParanthesesCommaGroup().endAfter();
         } else {
-            return startGroup().string(receiver).string(".").string(callSite).startParanthesesCommaGroup().endAfter();
+            return startGroup().tree(receiver).string(".").string(callSite).startParanthesesCommaGroup().endAfter();
         }
     }
 
@@ -336,6 +340,10 @@
         return startGroup().string("if ").startParanthesesCommaGroup().endAndWhitespaceAfter().startGroup().endAfter();
     }
 
+    public CodeTreeBuilder startFor() {
+        return startGroup().string("for ").startParantheses().endAndWhitespaceAfter().startGroup().endAfter();
+    }
+
     public boolean startIf(boolean elseIf) {
         if (elseIf) {
             startElseIf();