Other changes
[IRC.git] / Robust / src / IR / Tree / LiteralNode.java
index 9bb3e672f023dfc4565fe9beafcb1c66a2300750..0997e6d3bbac985569ea2b162e5a659f6cd3c16b 100644 (file)
@@ -50,9 +50,24 @@ public class LiteralNode extends ExpressionNode {
 
     }
 
-    public String printNode() {
+    public String printNode(int indent) {
        if (type==NULL)
            return "null";
+       if (type==STRING) {
+           return '"'+escapeString(value.toString())+'"';
+       }
        return "/*"+getType()+ "*/"+value.toString();
     }
+    private static String escapeString(String st) {
+       String new_st="";
+       for(int i=0;i<st.length();i++) {
+           char x=st.charAt(i);
+           if (x=='\n')
+               new_st+="\\n";
+           else if (x=='"')
+               new_st+="'"+'"'+"'";
+           else new_st+=x;
+       }
+       return new_st;
+    }
 }