]> git.saurik.com Git - cycript.git/blobdiff - Output.cpp
Commit a generally useful -gtiming implementation.
[cycript.git] / Output.cpp
index d3dbb0f71838d427d2655554dd9b3806b1a36949..c06f757d406b767913251ff570bfc93ef63ea630 100644 (file)
@@ -147,7 +147,9 @@ void CYBlock::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYBoolean::Output(CYOutput &out, CYFlags flags) const {
-    out << (Value() ? "true" : "false");
+    out << '!' << (Value() ? "0" : "1");
+    if ((flags & CYNoInteger) != 0)
+        out << '.';
 }
 
 void CYBreak::Output(CYOutput &out, CYFlags flags) const {
@@ -608,7 +610,7 @@ void New::Output(CYOutput &out, CYFlags flags) const {
 } }
 
 void CYNull::Output(CYOutput &out, CYFlags flags) const {
-    CYWord::Output(out);
+    out << "null";
 }
 
 void CYNumber::Output(CYOutput &out, CYFlags flags) const {
@@ -684,8 +686,7 @@ void CYRubyBlock::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYRubyProc::Output(CYOutput &out, CYFlags flags) const {
-    // XXX: this is not outputting the parameters
-    out << '{' << '\n';
+    out << '{' << ' ' << '|' << parameters_ << '|' << '\n';
     ++out.indent_;
     out << code_;
     --out.indent_;
@@ -783,7 +784,7 @@ void CYSwitch::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYThis::Output(CYOutput &out, CYFlags flags) const {
-    CYWord::Output(out);
+    out << "this";
 }
 
 namespace cy {