diff options
Diffstat (limited to 'src/libstore/build/worker.hh')
-rw-r--r-- | src/libstore/build/worker.hh | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/libstore/build/worker.hh b/src/libstore/build/worker.hh index 3984c9c1c..5af93b49e 100644 --- a/src/libstore/build/worker.hh +++ b/src/libstore/build/worker.hh @@ -105,6 +105,9 @@ private: */ std::map<StorePath, bool> pathContentsGoodCache; + void goalFinished(GoalPtr goal, Goal::Finished & f); + void handleWorkResult(GoalPtr goal, Goal::WorkResult how); + public: const Activity act; @@ -135,7 +138,17 @@ public: Store & store; Store & evalStore; - std::unique_ptr<HookInstance> hook; + struct HookState { + std::unique_ptr<HookInstance> instance; + + /** + * Whether to ask the build hook if it can build a derivation. If + * it answers with "decline-permanently", we don't try again. + */ + bool available = true; + }; + + HookState hook; uint64_t expectedBuilds = 0; uint64_t doneBuilds = 0; @@ -151,12 +164,6 @@ public: uint64_t expectedNarSize = 0; uint64_t doneNarSize = 0; - /** - * Whether to ask the build hook if it can build a derivation. If - * it answers with "decline-permanently", we don't try again. - */ - bool tryBuildHook = true; - Worker(Store & store, Store & evalStore); ~Worker(); |