File: .lake/packages/lean4/src/lean/lake/Lake/Load/Lean/Elab.lean

full_name: Lake.«instBEqImport_.lake»
code: BEq
goal: BEq Lean.Import

full_name: Lake.«instHashableImport_.lake»
code: Hashable
goal: Hashable Lean.Import

full_name: Lake.initFn._@..lake.packages.lean4.src.lean.lake.Lake.Load.Lean.Elab._hyg.126
code: initialize importEnvCache : IO.Ref (HashMap (Array Import) Environment) ← IO.mkRef {}
goal: IO (IO.Ref (Lean.HashMap (Array Lean.Import) Lean.Environment))

full_name: Lake.importEnvCache
code: initialize importEnvCache : IO.Ref (HashMap (Array Import) Environment) ← IO.mkRef {}
goal: IO.Ref (Lean.HashMap (Array Lean.Import) Lean.Environment)

full_name: Lake.importModulesUsingCache
code: /-- Like `importModules`, but fetch the resulting import state from the cache if possible. -/
def importModulesUsingCache (imports : Array Import) (opts : Options) (trustLevel : UInt32) : IO Environment 
goal: IO Lean.Environment

full_name: Lake.processHeader
code: /-- Like `Lean.Elab.processHeader`, but using `importEnvCache`. -/
def processHeader (header : Syntax) (opts : Options)
(inputCtx : Parser.InputContext) : StateT MessageLog IO Environment 
goal: StateT Lean.MessageLog IO Lean.Environment

full_name: Lake.configModuleName
code: /-- Main module `Name` of a Lake configuration file. -/
def configModuleName : Name 
goal: Lake.Name

full_name: Lake.elabConfigFile
code: /-- Elaborate `configFile` with the given package directory and options. -/
def elabConfigFile (pkgDir : FilePath) (lakeOpts : NameMap String)
(leanOpts := Options.empty) (configFile := pkgDir / defaultLeanConfigFile) : LogIO Environment 
goal: Lake.LogIO Lean.Environment

full_name: _private.«.lake».packages.lean4.src.lean.lake.Lake.Load.Lean.Elab.0.Lake.addToEnv
code: /--
`Lean.Environment.add` is now private, but exported as `lean_environment_add`.
We call it here via `@[extern]` with a mock implementation.
-/
@[extern "lean_environment_add"]
private opaque addToEnv (env : Environment) (_ : ConstantInfo) : Environment
goal: Lean.ConstantInfo → Lean.Environment

full_name: Lake.importConfigFileCore.lakeExts
code: /--
Import a configuration `.olean` (e.g., `lakefile.olean`).
Auxiliary definition for `importConfigFile`.
-/
def importConfigFileCore (olean : FilePath) (leanOpts : Options) : IO Environment 
goal: Lean.NameSet

full_name: Lake.importConfigFileCore
code: /--
Import a configuration `.olean` (e.g., `lakefile.olean`).
Auxiliary definition for `importConfigFile`.
-/
def importConfigFileCore (olean : FilePath) (leanOpts : Options) : IO Environment 
goal: IO Lean.Environment

full_name: Lake.ConfigTrace.configHash
code: structure ConfigTrace where
  platform : String
  leanHash : String
  configHash : Hash
  options : NameMap String
  deriving ToJson, FromJson
goal: Lake.Hash

full_name: Lake.ConfigTrace.platform
code: structure ConfigTrace where
  platform : String
  leanHash : String
  configHash : Hash
  options : NameMap String
  deriving ToJson, FromJson
goal: String

full_name: Lake.ConfigTrace.options
code: structure ConfigTrace where
  platform : String
  leanHash : String
  configHash : Hash
  options : NameMap String
  deriving ToJson, FromJson
goal: Lake.NameMap String

full_name: Lake.ConfigTrace.leanHash
code: structure ConfigTrace where
  platform : String
  leanHash : String
  configHash : Hash
  options : NameMap String
  deriving ToJson, FromJson
goal: String

full_name: Lake.ConfigTrace
code: structure ConfigTrace where
  platform : String
  leanHash : String
  configHash : Hash
  options : NameMap String
  deriving ToJson, FromJson
goal: Type

full_name: Lake.instToJsonConfigTrace
code: ToJson
goal: Lean.ToJson Lake.ConfigTrace

full_name: Lake.instFromJsonConfigTrace
code: FromJson
goal: Lean.FromJson Lake.ConfigTrace

full_name: Lake.importConfigFile
code: /--
Import the `.olean` for the configuration file if `reconfigure` is not set and
an up-to-date one exists (i.e., one with matching configuration and on the same
toolchain). Otherwise, elaborate the configuration and save it to the `.olean`.
-/
def importConfigFile (cfg : LoadConfig) : LogIO Environment 
goal: Lake.LogIO Lean.Environment