diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2021-07-27 12:20:32 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-27 12:20:32 +0200 |
commit | c000cec27fcb16548606830410be265eb082f777 (patch) | |
tree | ad9ba8162ccf50992bbb0947b8c8c546c4530b62 /src/libexpr/eval.cc | |
parent | f52fa47e16142d992127677739cc458fc26a0455 (diff) | |
parent | 29e4913f7947730c468c1d96f150648ec59f572d (diff) |
Merge pull request #5048 from tweag/flox-eval-store
--eval-store and faster closure copying
Diffstat (limited to 'src/libexpr/eval.cc')
-rw-r--r-- | src/libexpr/eval.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libexpr/eval.cc b/src/libexpr/eval.cc index b2706aea0..327f7e974 100644 --- a/src/libexpr/eval.cc +++ b/src/libexpr/eval.cc @@ -378,7 +378,10 @@ static Strings parseNixPath(const string & s) } -EvalState::EvalState(const Strings & _searchPath, ref<Store> store) +EvalState::EvalState( + const Strings & _searchPath, + ref<Store> store, + std::shared_ptr<Store> buildStore) : sWith(symbols.create("<with>")) , sOutPath(symbols.create("outPath")) , sDrvPath(symbols.create("drvPath")) @@ -411,6 +414,7 @@ EvalState::EvalState(const Strings & _searchPath, ref<Store> store) , sEpsilon(symbols.create("")) , repair(NoRepair) , store(store) + , buildStore(buildStore ? buildStore : store) , regexCache(makeRegexCache()) , baseEnv(allocEnv(128)) , staticBaseEnv(false, 0) |