Recursive Building #
This module defines Lake's top-level build monad, FetchM
, used
for performing recursive builds. A recursive build is a build function
which can fetch the results of other (recursive) builds. This is done
using the fetch
function defined in this module.
The internal core monad of Lake builds. Not intended for user use.
Equations
Instances For
A recursive build of a Lake build store that may encounter a cycle.
An internal monad. Not intended for user use.
Equations
Instances For
Log build cycle and error.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
A recursive build of a Lake build store that may encounter a cycle.
An internal monad. Not intended for user use.
Equations
Instances For
Run a recursive build.
Equations
- Lake.RecBuildM.run stack store build = (build stack).run store
Instances For
Run a recursive build in a fresh build store.
Equations
- build.run' = (fun (x : α × Lake.BuildStore) => x.fst) <$> Lake.RecBuildM.run ∅ ∅ build
Instances For
A build function for any element of the Lake build index.
Equations
- Lake.IndexBuildFn m = ((info : Lake.BuildInfo) → m (Lake.Job (Lake.BuildData info.key)))
Instances For
A transformer to equip a monad with a build function for the Lake index.
Equations
Instances For
The top-level monad transformer for Lake build functions.
Equations
Instances For
The top-level monad for Lake build functions.
Equations
Instances For
The top-level monad for Lake build functions. Renamed FetchM
.
Equations
Instances For
The old build monad. Uses should generally be replaced by FetchM
.