Ninja: use structured bindings for readability

Signed-off-by: Matthias Maennich <[email protected]>
diff --git a/src/ninja.cc b/src/ninja.cc
index ad60b74..76fd5dc 100644
--- a/src/ninja.cc
+++ b/src/ninja.cc
@@ -218,8 +218,8 @@
  private:
   void PopulateNinjaNodes(const std::vector<NamedDepNode>& nodes) {
     ScopedTimeReporter tr("ninja gen (eval)");
-    for (auto const& node : nodes) {
-      PopulateNinjaNode(*node.second);
+    for (auto const& [symbol, depnode] : nodes) {
+      PopulateNinjaNode(*depnode);
     }
   }
 
@@ -246,14 +246,14 @@
     nn.commands = ce_.Eval(node);
     nn.rule_id = nn.commands.empty() ? -1 : rule_id_++;
 
-    for (auto const& d : node.deps) {
-      PopulateNinjaNode(*d.second);
+    for (auto const& [symbol, depnode] : node.deps) {
+      PopulateNinjaNode(*depnode);
     }
-    for (auto const& d : node.order_onlys) {
-      PopulateNinjaNode(*d.second);
+    for (auto const& [symbol, depnode] : node.order_onlys) {
+      PopulateNinjaNode(*depnode);
     }
-    for (auto const& d : node.validations) {
-      PopulateNinjaNode(*d.second);
+    for (auto const& [symbol, depnode] : node.validations) {
+      PopulateNinjaNode(*depnode);
     }
   }
 
@@ -622,8 +622,8 @@
 
     if (!used_envs_.empty()) {
       out << "# Environment variables used:\n";
-      for (const auto& p : used_envs_) {
-        out << "# " << p.first << "=" << p.second << '\n';
+      for (const auto& [key, value] : used_envs_) {
+        out << "# " << key << "=" << value << '\n';
       }
       out << '\n';
     }
@@ -681,12 +681,12 @@
     fprintf(fp, "# Generated by kati %s\n", kGitVersion);
     fprintf(fp, "\n");
 
-    for (const auto& p : ev_->exports()) {
-      if (p.second) {
-        const std::string val = ev_->EvalVar(p.first);
-        fprintf(fp, "export '%s'='%s'\n", p.first.c_str(), val.c_str());
+    for (const auto& [symbol, is_exported] : ev_->exports()) {
+      if (is_exported) {
+        const std::string val = ev_->EvalVar(symbol);
+        fprintf(fp, "export '%s'='%s'\n", symbol.c_str(), val.c_str());
       } else {
-        fprintf(fp, "unset '%s'\n", p.first.c_str());
+        fprintf(fp, "unset '%s'\n", symbol.c_str());
       }
     }
 
@@ -736,17 +736,17 @@
       DumpString(fp, v.str());
     }
     DumpInt(fp, used_envs_.size());
-    for (const auto& p : used_envs_) {
-      DumpString(fp, p.first);
-      DumpString(fp, p.second);
+    for (const auto& [key, value] : used_envs_) {
+      DumpString(fp, key);
+      DumpString(fp, value);
     }
 
     const std::unordered_map<std::string, std::vector<std::string>*>& globs =
         GetAllGlobCache();
     DumpInt(fp, globs.size());
-    for (const auto& p : globs) {
-      DumpString(fp, p.first);
-      const std::vector<std::string>& files = *p.second;
+    for (const auto& [key, values] : globs) {
+      DumpString(fp, key);
+      const std::vector<std::string>& files = *values;
 #if 0
       std::unordered_set<std::string> dirs;
       GetReadDirs(p.first, files, &dirs);