private:
void append(const std::string &);
void append(char);
void set_source(unsigned, unsigned);
private:
void append(const std::string &);
void append(char);
void set_source(unsigned, unsigned);
virtual void visit(Block &);
virtual void visit(Literal &);
virtual void visit(ParenthesizedExpression &);
virtual void visit(VariableReference &);
virtual void visit(Block &);
virtual void visit(Literal &);
virtual void visit(ParenthesizedExpression &);
virtual void visit(VariableReference &);
virtual void visit(UnaryExpression &);
virtual void visit(BinaryExpression &);
virtual void visit(Assignment &);
virtual void visit(UnaryExpression &);
virtual void visit(BinaryExpression &);
virtual void visit(Assignment &);
virtual void visit(FunctionDeclaration &);
virtual void visit(Conditional &);
virtual void visit(Iteration &);
virtual void visit(FunctionDeclaration &);
virtual void visit(Conditional &);
virtual void visit(Iteration &);