/* Cycript - Optimizing JavaScript Compiler/Runtime
- * Copyright (C) 2009-2010 Jay Freeman (saurik)
+ * Copyright (C) 2009-2012 Jay Freeman (saurik)
*/
/* GNU Lesser General Public License, Version 3 {{{ */
out << "return $cyc;";
out << "}(";
if (super_ != NULL)
- super_->Output(out, CYPA, CYNoFlags);
+ super_->Output(out, CYAssign::Precedence_, CYNoFlags);
else
out << "null";
out << "))";
void CYMessage::Output(CYOutput &out, bool replace) const {
out << (instance_ ? '-' : '+');
- for (CYMessageParameter *parameter(parameters_); parameter != NULL; parameter = parameter->next_)
+ CYForEach (parameter, parameters_)
if (parameter->tag_ != NULL) {
out << ' ' << *parameter->tag_;
if (parameter->name_ != NULL)
out << code_;
}
+void CYBox::Output(CYOutput &out, CYFlags flags) const {
+ out << '@';
+ value_->Output(out, Precedence(), CYRight(flags));
+}
+
void CYProtocol::Output(CYOutput &out) const {
- name_->Output(out, CYPA, CYNoFlags);
+ name_->Output(out, CYAssign::Precedence_, CYNoFlags);
if (next_ != NULL)
out << ',' << ' ' << *next_;
}
}
void CYSend::Output(CYOutput &out, CYFlags flags) const {
- for (CYArgument *argument(arguments_); argument != NULL; argument = argument->next_)
+ CYForEach (argument, arguments_)
if (argument->name_ != NULL) {
out << ' ' << *argument->name_;
if (argument->value_ != NULL)
void CYSendDirect::Output(CYOutput &out, CYFlags flags) const {
out << '[';
- self_->Output(out, CYPA, CYNoFlags);
+ self_->Output(out, CYAssign::Precedence_, CYNoFlags);
CYSend::Output(out, flags);
out << ']';
}