diff options
author | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-07-28 15:24:17 +0900 |
---|---|---|
committer | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-07-28 15:24:17 +0900 |
commit | 86e113342a49499850701e3b752ce56ec73d34d6 (patch) | |
tree | bf2429c8e9cc7ff2347aefad956b79266eee1f76 /eval.h | |
parent | 7409aee3b69a7de63af7a4c3dd7ea87d84fed0f1 (diff) | |
download | kati-86e113342a49499850701e3b752ce56ec73d34d6.tar.gz |
[C++] Fix info, warning, and error for ninja
Diffstat (limited to 'eval.h')
-rw-r--r-- | eval.h | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -59,6 +59,7 @@ class Evaluator { shared_ptr<string> EvalVar(Symbol name); const Loc& loc() const { return loc_; } + void set_loc(const Loc& loc) { loc_ = loc; } const vector<shared_ptr<Rule>>& rules() const { return rules_; } const unordered_map<Symbol, Vars*>& rule_vars() const { @@ -76,6 +77,16 @@ class Evaluator { bool avoid_io() const { return avoid_io_; } void set_avoid_io(bool a) { avoid_io_ = a; } + const vector<string>& delayed_output_commands() const { + return delayed_output_commands_; + } + void add_delayed_output_command(const string& c) { + delayed_output_commands_.push_back(c); + } + void clear_delayed_output_commands() { + delayed_output_commands_.clear(); + } + private: Var* EvalRHS(Symbol lhs, Value* rhs, StringPiece orig_rhs, AssignOp op, bool is_override = false); @@ -92,7 +103,11 @@ class Evaluator { Loc loc_; bool is_bootstrap_; + bool avoid_io_; + // Commands which should run at ninja-time (i.e., info, warning, and + // error). + vector<string> delayed_output_commands_; }; #endif // EVAL_H_ |