コード例 #1
0
 virtual void visitAssign(POETAssign* assign) 
    { 
      POETCode* r1 = assign->get_lhs(), *r2 = assign->get_rhs();
    try {
      r2 = apply(r2); 
      if (r2 == 0) r2 = EMPTY;
      res = assign_AST(r2, r1);
    }
     catch (Error err) { std::cerr << "From invoking " << SHORT(assign->toString(DEBUG_NO_VAR),500) << "\n"; throw err; }
     if (user_debug) {
       std::cerr << assign->toString() << "\n===>" << res->toString() << "\n";
    }
   }
コード例 #2
0
ファイル: parse.cpp プロジェクト: LindaLovelace/rose
 virtual void visitAssign(POETAssign* assign)  {
         check_localVar(assign->get_rhs());
         apply(assign->get_rhs(),fullmatch);
         res = assign_AST(res, assign->get_lhs());
         if (fullmatch != 0) fullmatch=EMPTY; 
   }