mirror of
https://github.com/NixOS/nix.git
synced 2025-11-16 15:32:43 +01:00
Simplify the callback mechanism
This commit is contained in:
parent
1672bcd230
commit
81ea8bd5ce
16 changed files with 152 additions and 180 deletions
|
|
@ -294,10 +294,9 @@ void RemoteStore::querySubstitutablePathInfos(const PathSet & paths,
|
|||
|
||||
|
||||
void RemoteStore::queryPathInfoUncached(const Path & path,
|
||||
std::function<void(std::shared_ptr<ValidPathInfo>)> success,
|
||||
std::function<void(std::exception_ptr exc)> failure)
|
||||
Callback<std::shared_ptr<ValidPathInfo>> callback)
|
||||
{
|
||||
sync2async<std::shared_ptr<ValidPathInfo>>(success, failure, [&]() {
|
||||
try {
|
||||
auto conn(connections->get());
|
||||
conn->to << wopQueryPathInfo << path;
|
||||
try {
|
||||
|
|
@ -324,8 +323,8 @@ void RemoteStore::queryPathInfoUncached(const Path & path,
|
|||
info->sigs = readStrings<StringSet>(conn->from);
|
||||
conn->from >> info->ca;
|
||||
}
|
||||
return info;
|
||||
});
|
||||
callback(std::move(info));
|
||||
} catch (...) { callback.rethrow(); }
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue