1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-06 21:41:48 +02:00

Rename Buildable

This commit is contained in:
John Ericson 2021-04-05 09:48:18 -04:00
parent 9dfb97c987
commit 9b805d36ac
35 changed files with 165 additions and 162 deletions

View file

@ -117,7 +117,7 @@ std::optional<ContentAddress> getDerivationCA(const BasicDerivation & drv)
return std::nullopt;
}
void Store::queryMissing(const std::vector<BuildableReq> & targets,
void Store::queryMissing(const std::vector<DerivedPath> & targets,
StorePathSet & willBuild_, StorePathSet & willSubstitute_, StorePathSet & unknown_,
uint64_t & downloadSize_, uint64_t & narSize_)
{
@ -145,7 +145,7 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
Sync<State> state_(State{{}, unknown_, willSubstitute_, willBuild_, downloadSize_, narSize_});
std::function<void(BuildableReq)> doPath;
std::function<void(DerivedPath)> doPath;
auto mustBuildDrv = [&](const StorePath & drvPath, const Derivation & drv) {
{
@ -154,7 +154,7 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
}
for (auto & i : drv.inputDrvs)
pool.enqueue(std::bind(doPath, BuildableReqFromDrv { i.first, i.second }));
pool.enqueue(std::bind(doPath, DerivedPath::Built { i.first, i.second }));
};
auto checkOutput = [&](
@ -177,13 +177,13 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
drvState->outPaths.insert(outPath);
if (!drvState->left) {
for (auto & path : drvState->outPaths)
pool.enqueue(std::bind(doPath, BuildableOpaque { path } ));
pool.enqueue(std::bind(doPath, DerivedPath::Opaque { path } ));
}
}
}
};
doPath = [&](const BuildableReq & req) {
doPath = [&](const DerivedPath & req) {
{
auto state(state_.lock());
@ -191,7 +191,7 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
}
std::visit(overloaded {
[&](BuildableReqFromDrv bfd) {
[&](DerivedPath::Built bfd) {
if (!isValidPath(bfd.drvPath)) {
// FIXME: we could try to substitute the derivation.
auto state(state_.lock());
@ -224,7 +224,7 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
mustBuildDrv(bfd.drvPath, *drv);
},
[&](BuildableOpaque bo) {
[&](DerivedPath::Opaque bo) {
if (isValidPath(bo.path)) return;
@ -248,7 +248,7 @@ void Store::queryMissing(const std::vector<BuildableReq> & targets,
}
for (auto & ref : info->second.references)
pool.enqueue(std::bind(doPath, BuildableOpaque { ref }));
pool.enqueue(std::bind(doPath, DerivedPath::Opaque { ref }));
},
}, req.raw());
};