25 st[name] = exp->eval(st, ft);
38 cft[name]->apply(st, ft, expList);
57 if (condition->eval(st, ft) > 0) {
58 trueList->eval(st, ft);
60 falseList->eval(st, ft);
70 while (condition->eval(st, ft) > 0) {
71 stmtList->eval(st, ft);
80 Number n(exp->eval(st, ft));
81 cout <<
">> " << n << endl;
94 for (list<Statement*>::const_iterator it = stmtList.begin(); it != stmtList.end(); ++it) {
100 stmtList.push_back(stmt);
105 list<Statement*>::const_iterator it;
107 for (it = stmtList.begin(); it != stmtList.end(); ++it) {
112 cerr <<
"error (line " << (*it)->getLineNumber() <<
"): " << e.
what() << endl;
void eval(SymbolTable &, FunctionTable &) const
void eval(SymbolTable &, FunctionTable &) const
void eval(SymbolTable &, FunctionTable &) const
void eval(SymbolTable &, FunctionTable &) const
void eval(SymbolTable &, FunctionTable &) const
virtual const char * what() const
void eval(SymbolTable &, FunctionTable &) const
virtual int getLineNumber() const
void eval(SymbolTable &, FunctionTable &) const
void eval(SymbolTable &, FunctionTable &) const