Lake Configuration Monads #
Definitions and helpers for interacting with the Lake configuration monads.
A monad equipped with a (read-only) detected environment for Lake.
Equations
Instances For
Equations
- Lake.LakeEnvT.run env self = ReaderT.run self env
Instances For
A monad equipped with a (read-only) Lake context.
Equations
Instances For
Make a Lake.Context
from a Workspace
.
Equations
- Lake.mkLakeContext ws = { opaqueWs := Lake.OpaqueWorkspace.mk ws }
Instances For
Run a LakeT
monad in the context of this workspace.
Instances For
Equations
- Lake.instMonadLakeOfMonadWorkspaceOfFunctor = { read := (fun (x : Lake.Workspace) => Lake.mkLakeContext x) <$> Lake.getWorkspace }
Equations
- Lake.instMonadLakeEnvOfMonadWorkspaceOfFunctor = { read := (fun (x : Lake.Workspace) => x.lakeEnv) <$> Lake.getWorkspace }
Workspace Helpers #
Get the root package of the context's workspace.
Instances For
Try to find a package within the workspace with the given name.
Equations
- Lake.findPackage? name = (fun (x : Lake.Workspace) => Lake.Workspace.findPackage? name x) <$> Lake.getWorkspace
Instances For
Locate the named, buildable, importable, local module in the workspace.
Instances For
Try to find a Lean executable in the workspace with the given name.
Instances For
Try to find a Lean library in the workspace with the given name.
Equations
- Lake.findLeanLib? name = (fun (x : Lake.Workspace) => Lake.Workspace.findLeanLib? name x) <$> Lake.getWorkspace
Instances For
Try to find an external library in the workspace with the given name.
Equations
- Lake.findExternLib? name = (fun (x : Lake.Workspace) => Lake.Workspace.findExternLib? name x) <$> Lake.getWorkspace
Instances For
Get the paths added to LEAN_PATH
by the context's workspace.
Instances For
Get the paths added to LEAN_SRC_PATH
by the context's workspace.
Instances For
Get the augmented LEAN_PATH
set by the context's workspace.
Equations
- Lake.getAugmentedLeanPath = (fun (x : Lake.Workspace) => x.augmentedLeanPath) <$> Lake.getWorkspace
Instances For
Get the augmented LEAN_SRC_PATH
set by the context's workspace.
Instances For
Get the augmented environment variables set by the context's workspace.
Equations
- Lake.getAugmentedEnv = (fun (x : Lake.Workspace) => x.augmentedEnvVars) <$> Lake.getWorkspace
Instances For
Environment Helpers #
Instances For
Get the LAKE_NO_CACHE
/--no-cache
Lake configuration.
Instances For
Get whether the LAKE_NO_CACHE
/--no-cache
Lake configuration is NOT set.
Instances For
Get the LAKE_PACKAGE_URL_MAP
for the Lake environment. Empty if none.
Instances For
Get the name of Elan toolchain for the Lake environment. Empty if none.
Instances For
Search Path Helpers #
Get the detected LEAN_PATH
value of the Lake environment.
Instances For
Get the detected LEAN_SRC_PATH
value of the Lake environment.
Instances For
Elan Install Helpers #
Get the detected Elan installation (if one).
Instances For
Get the root directory of the detected Elan installation (i.e., ELAN_HOME
).
Equations
- Lake.getElanHome? = (fun (x : Option Lake.ElanInstall) => Option.map (fun (x : Lake.ElanInstall) => x.home) x) <$> Lake.getElanInstall?
Instances For
Get the path of the elan
binary in the detected Elan installation.
Instances For
Lean Install Helpers #
Get the detected Lean installation.
Instances For
Get the root directory of the detected Lean installation.
Equations
- Lake.getLeanSysroot = (fun (x : Lake.LeanInstall) => x.sysroot) <$> Lake.getLeanInstall
Instances For
Get the Lean source directory of the detected Lean installation.
Instances For
Get the Lean library directory of the detected Lean installation.
Instances For
Get the C include directory of the detected Lean installation.
Instances For
Get the system library directory of the detected Lean installation.
Equations
- Lake.getLeanSystemLibDir = (fun (x : Lake.LeanInstall) => x.systemLibDir) <$> Lake.getLeanInstall
Instances For
Get the path of the lean
binary in the detected Lean installation.
Instances For
Get the path of the leanc
binary in the detected Lean installation.
Instances For
Get the path of the ar
binary in the detected Lean installation.
Equations
- Lake.getLeanAr = (fun (x : Lake.LeanInstall) => x.ar) <$> Lake.getLeanInstall
Instances For
Get the path of C compiler in the detected Lean installation.
Equations
- Lake.getLeanCc = (fun (x : Lake.LeanInstall) => x.cc) <$> Lake.getLeanInstall
Instances For
Get the optional LEAN_CC
compiler override of the detected Lean installation.
Equations
- Lake.getLeanCc? = (fun (x : Lake.LeanInstall) => x.leanCc?) <$> Lake.getLeanInstall
Instances For
Lake Install Helpers #
Get the detected Lake installation.
Instances For
Get the root directory of the detected Lake installation (e.g., LAKE_HOME
).
Instances For
Get the source directory of the detected Lake installation.
Equations
- Lake.getLakeSrcDir = (fun (x : Lake.LakeInstall) => x.srcDir) <$> Lake.getLakeInstall
Instances For
Get the Lean library directory of the detected Lake installation.
Equations
- Lake.getLakeLibDir = (fun (x : Lake.LakeInstall) => x.libDir) <$> Lake.getLakeInstall
Instances For
Get the path of the lake
binary in the detected Lake installation.