_assert(out_.sputc(value) != EOF);
recent_ = indent_;
if (value == '\n')
- position_.lines(1);
+ position_.Lines(1);
else
- position_.columns(1);
+ position_.Columns(1);
}
_finline void operator ()(const char *data, std::streamsize size) {
_assert(out_.sputn(data, size) == size);
recent_ = indent_;
- position_.columns(size);
+ position_.Columns(size);
}
_finline void operator ()(const char *data) {
virtual void Output(CYOutput &out, CYFlags flags) const;
};
-struct CYLetStatement :
+struct CYLet :
CYStatement
{
CYDeclarations *declarations_;
- CYStatement *code_;
- CYLetStatement(CYDeclarations *declarations, CYStatement *code) :
- declarations_(declarations),
- code_(code)
+ CYLet(CYDeclarations *declarations) :
+ declarations_(declarations)
{
}
- CYCompact(Long)
+ CYCompact(None)
virtual CYStatement *Replace(CYContext &context);
virtual void Output(CYOutput &out, CYFlags flags) const;
}
CYProperty *ReplaceAll(CYContext &context, CYBuilder &builder, CYExpression *self, bool update);
- void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, bool computed);
+ void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, bool protect);
- virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name) = 0;
+ virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name, bool protect) = 0;
virtual void Replace(CYContext &context) = 0;
virtual void Output(CYOutput &out) const;
{
}
- virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name);
+ virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name, bool protect);
virtual void Replace(CYContext &context);
virtual void Output(CYOutput &out) const;
};
{
}
- virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name);
+ virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name, bool protect);
virtual void Output(CYOutput &out) const;
};
{
}
- virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name);
+ virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name, bool protect);
virtual void Output(CYOutput &out) const;
};
virtual CYFunctionExpression *Constructor();
- virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name);
+ virtual void Replace(CYContext &context, CYBuilder &builder, CYExpression *self, CYExpression *name, bool protect);
virtual void Output(CYOutput &out) const;
};