]> git.saurik.com Git - cycript.git/blobdiff - Output.cpp
Massive changes to lexer to get template literals.
[cycript.git] / Output.cpp
index d45a7397489e928d45471a4501acea9f23b3c809..9ec05c2044e100057f8c43489dbf7545add0ccaa 100644 (file)
@@ -147,7 +147,9 @@ void CYBlock::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYBoolean::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 {
 }
 
 void CYBreak::Output(CYOutput &out, CYFlags flags) const {
@@ -181,13 +183,6 @@ void Catch::Output(CYOutput &out) const {
 
 } }
 
 
 } }
 
-void CYComment::Output(CYOutput &out, CYFlags flags) const {
-    out << '\r';
-    out(value_);
-    out.right_ = true;
-    out << '\r';
-}
-
 void CYCompound::Output(CYOutput &out, CYFlags flags) const {
     if (next_ == NULL)
         expression_->Output(out, flags);
 void CYCompound::Output(CYOutput &out, CYFlags flags) const {
     if (next_ == NULL)
         expression_->Output(out, flags);
@@ -508,6 +503,10 @@ void CYStatement::Output(CYOutput &out) const {
     Multiple(out);
 }
 
     Multiple(out);
 }
 
+void CYTemplate::Output(CYOutput &out, CYFlags flags) const {
+    _assert(false);
+}
+
 void CYTypeArrayOf::Output(CYOutput &out, CYIdentifier *identifier) const {
     next_->Output(out, Precedence(), identifier);
     out << '[';
 void CYTypeArrayOf::Output(CYOutput &out, CYIdentifier *identifier) const {
     next_->Output(out, Precedence(), identifier);
     out << '[';
@@ -608,7 +607,7 @@ void New::Output(CYOutput &out, CYFlags flags) const {
 } }
 
 void CYNull::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 {
 }
 
 void CYNumber::Output(CYOutput &out, CYFlags flags) const {
@@ -651,7 +650,7 @@ void CYPrefix::Output(CYOutput &out, CYFlags flags) const {
     rhs_->Output(out, Precedence(), CYRight(flags));
 }
 
     rhs_->Output(out, Precedence(), CYRight(flags));
 }
 
-void CYProgram::Output(CYOutput &out) const {
+void CYScript::Output(CYOutput &out) const {
     out << code_;
 }
 
     out << code_;
 }
 
@@ -782,7 +781,7 @@ void CYSwitch::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYThis::Output(CYOutput &out, CYFlags flags) const {
 }
 
 void CYThis::Output(CYOutput &out, CYFlags flags) const {
-    CYWord::Output(out);
+    out << "this";
 }
 
 namespace cy {
 }
 
 namespace cy {