virtual CYStatement *Replace(CYContext &context) = 0;
+ virtual CYStatement *Return();
+
private:
virtual void Output(CYOutput &out, CYFlags flags) const = 0;
};
virtual CYStatement *Replace(CYContext &context);
virtual void Output(CYOutput &out, CYFlags flags) const;
+
+ virtual CYStatement *Return();
};
struct CYForInitialiser {
virtual CYStatement *Replace(CYContext &context);
virtual void Output(CYOutput &out, CYFlags flags) const;
+
+ virtual CYStatement *Return();
};
struct CYDoWhile :
CYStatement *code_;
CYNonLocal *nonlocal_;
+ bool implicit_;
CYThisScope this_;
CYFunction(CYIdentifier *name, CYFunctionParameter *parameters, CYStatement *code) :
name_(name),
parameters_(parameters),
code_(code),
- nonlocal_(NULL)
+ nonlocal_(NULL),
+ implicit_(false)
{
}
virtual CYStatement *Replace(CYContext &context);
virtual void Output(CYOutput &out, CYFlags flags) const;
+
+ virtual CYStatement *Return();
};
struct CYContinue :