summaryrefslogtreecommitdiffstats
path: root/src/build.cc
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2016-04-19 19:57:49 (GMT)
committerBrad King <brad.king@kitware.com>2016-04-19 19:59:08 (GMT)
commit87b57e88755f130159b759b8a9954c362bc463d4 (patch)
tree3af9e927797da3fe1cc75adc662fb847d91dca17 /src/build.cc
parent10ef5bf7f965b92e79777309f62ffc3fc9787065 (diff)
downloadNinja-87b57e88755f130159b759b8a9954c362bc463d4.zip
Ninja-87b57e88755f130159b759b8a9954c362bc463d4.tar.gz
Ninja-87b57e88755f130159b759b8a9954c362bc463d4.tar.bz2
Improve Plan::EdgeFinished signature
Use an enumeration instead of a boolean to clarify the purpose of arguments at call sites. Suggested-by: Nico Weber <nicolasweber@gmx.de>
Diffstat (limited to 'src/build.cc')
-rw-r--r--src/build.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/build.cc b/src/build.cc
index 0971a87..3a17bdb 100644
--- a/src/build.cc
+++ b/src/build.cc
@@ -385,7 +385,7 @@ void Plan::ScheduleWork(Edge* edge) {
}
}
-void Plan::EdgeFinished(Edge* edge, bool success) {
+void Plan::EdgeFinished(Edge* edge, EdgeResult result) {
map<Edge*, bool>::iterator e = want_.find(edge);
assert(e != want_.end());
bool directly_wanted = e->second;
@@ -396,7 +396,7 @@ void Plan::EdgeFinished(Edge* edge, bool success) {
edge->pool()->RetrieveReadyEdges(&ready_);
// The rest of this function only applies to successful commands.
- if (!success)
+ if (result != kEdgeSucceeded)
return;
if (directly_wanted)
@@ -426,7 +426,7 @@ void Plan::NodeFinished(Node* node) {
} else {
// We do not need to build this edge, but we might need to build one of
// its dependents.
- EdgeFinished(*oe, true);
+ EdgeFinished(*oe, kEdgeSucceeded);
}
}
}
@@ -659,7 +659,7 @@ bool Builder::Build(string* err) {
}
if (edge->is_phony()) {
- plan_.EdgeFinished(edge, true);
+ plan_.EdgeFinished(edge, Plan::kEdgeSucceeded);
} else {
++pending_commands;
}
@@ -779,7 +779,7 @@ bool Builder::FinishCommand(CommandRunner::Result* result, string* err) {
// The rest of this function only applies to successful commands.
if (!result->success()) {
- plan_.EdgeFinished(edge, false);
+ plan_.EdgeFinished(edge, Plan::kEdgeFailed);
return true;
}
@@ -830,7 +830,7 @@ bool Builder::FinishCommand(CommandRunner::Result* result, string* err) {
}
}
- plan_.EdgeFinished(edge, true);
+ plan_.EdgeFinished(edge, Plan::kEdgeSucceeded);
// Delete any left over response file.
string rspfile = edge->GetUnescapedRspfile();