summaryrefslogtreecommitdiff
path: root/nix/libstore/misc.cc
diff options
context:
space:
mode:
authorCongcong Kuo <congcong.kuo@gmail.com>2025-05-29 23:46:21 +0800
committerLudovic Courtès <ludo@gnu.org>2025-06-09 22:05:13 +0200
commit3721eb1d6a9077a9bdb752ff0baa519293a788d4 (patch)
tree86259200432a16560c37a3b7b74c890e5dd85ea3 /nix/libstore/misc.cc
parent17086531773722f758c3826fb53dd2e951ceb620 (diff)
daemon: Remove ‘foreach’ and ‘foreach_reverse’
‘foreach_reverse’ is not used anywhere * nix/libutil/util.hh (foreach, foreach_reverse): Remove. * nix/libstore/build.cc (addToWeakGoals): Use ‘std::none_of’ instead of macro ‘foreach’. (Goal::waiteeDone, Goal::amDone, UserLock::acquire, rewriteHashes, DerivationGoal::addWantedOutputs, DerivationGoal::haveDerivation, DerivationGoal::outputsSubstituted, DerivationGoal::repairClosure, DerivationGoal::inputsRealised, DerivationGoal::tryToBuild, DerivationGoal::buildDone, DerivationGoal::tryBuildHook, DerivationGoal::startBuilder, DerivationGoal::runChild, parseReferenceSpecifiers, DerivationGoal::registerOutputs, DerivationGoal::checkPathValidity, SubstitutionGoal::tryNext, SubstitutionGoal::referencesValid, Worker::removeGoal, Worker::childTerminated, Worker::run, Worker::waitForInput): Use range-based ‘for’ instead of macro ‘foreach’. * nix/libstore/derivations.cc (writeDerivation, unparseDerivation, hashDerivationModulo): Likewise. * nix/libstore/gc.cc (addAdditionalRoots, LocalStore::deletePathRecursive, LocalStore::canReachRoot, LocalStore::collectGarbage): Likewise. * nix/libstore/globals.cc (Settings::pack): Likewise. * nix/libstore/local-store.cc (checkDerivationOutputs, queryValidPaths, querySubstitutablePaths, querySubstitutablePathInfos, registerValidPaths, verifyStore, verifyPath): Likewise. * nix/libstore/misc.cc (computeFSClosure, dfsVisit, topoSortPaths): Likewise. * nix/libstore/optimise-store.cc (LocalStore::optimisePath_, LocalStore::optimiseStore): Likewise. * nix/libstore/pathlocks.cc (PathLocks::lockPaths, PathLocks::~PathLocks): Likewise. * nix/libstore/references.cc (search, scanForReferences): Likewise. * nix/libstore/store-api.cc (checkStoreName, computeStorePathForText, StoreAPI::makeValidityRegistration, showPaths, readStorePaths): Likewise. * nix/libutil/serialise.cc (writeStrings): Likewise. * nix/libutil/util.cc (concatStringsSep): Likewise. * nix/nix-daemon/nix-daemon.cc (performOp): Likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'nix/libstore/misc.cc')
-rw-r--r--nix/libstore/misc.cc28
1 files changed, 14 insertions, 14 deletions
diff --git a/nix/libstore/misc.cc b/nix/libstore/misc.cc
index d4e6d1b4af..bc5dec88bf 100644
--- a/nix/libstore/misc.cc
+++ b/nix/libstore/misc.cc
@@ -28,15 +28,15 @@ void computeFSClosure(StoreAPI & store, const Path & path,
if (includeOutputs) {
PathSet derivers = store.queryValidDerivers(path);
- foreach (PathSet::iterator, i, derivers)
- edges.insert(*i);
+ for (auto& i : derivers)
+ edges.insert(i);
}
if (includeDerivers && isDerivation(path)) {
PathSet outputs = store.queryDerivationOutputs(path);
- foreach (PathSet::iterator, i, outputs)
- if (store.isValidPath(*i) && store.queryDeriver(*i) == path)
- edges.insert(*i);
+ for (auto& i : outputs)
+ if (store.isValidPath(i) && store.queryDeriver(i) == path)
+ edges.insert(i);
}
} else {
@@ -44,8 +44,8 @@ void computeFSClosure(StoreAPI & store, const Path & path,
if (includeOutputs && isDerivation(path)) {
PathSet outputs = store.queryDerivationOutputs(path);
- foreach (PathSet::iterator, i, outputs)
- if (store.isValidPath(*i)) edges.insert(*i);
+ for (auto& i : outputs)
+ if (store.isValidPath(i)) edges.insert(i);
}
if (includeDerivers) {
@@ -54,8 +54,8 @@ void computeFSClosure(StoreAPI & store, const Path & path,
}
}
- foreach (PathSet::iterator, i, edges)
- computeFSClosure(store, *i, paths, flipDirection, includeOutputs, includeDerivers);
+ for (auto& i : edges)
+ computeFSClosure(store, i, paths, flipDirection, includeOutputs, includeDerivers);
}
@@ -74,11 +74,11 @@ static void dfsVisit(StoreAPI & store, const PathSet & paths,
if (store.isValidPath(path))
store.queryReferences(path, references);
- foreach (PathSet::iterator, i, references)
+ for (auto& i : references)
/* Don't traverse into paths that don't exist. That can
happen due to substitutes for non-existent paths. */
- if (*i != path && paths.find(*i) != paths.end())
- dfsVisit(store, paths, *i, visited, sorted, parents);
+ if (i != path && paths.find(i) != paths.end())
+ dfsVisit(store, paths, i, visited, sorted, parents);
sorted.push_front(path);
parents.erase(path);
@@ -89,8 +89,8 @@ Paths topoSortPaths(StoreAPI & store, const PathSet & paths)
{
Paths sorted;
PathSet visited, parents;
- foreach (PathSet::const_iterator, i, paths)
- dfsVisit(store, paths, *i, visited, sorted, parents);
+ for (const auto& i : paths)
+ dfsVisit(store, paths, i, visited, sorted, parents);
return sorted;
}