Documentation

Lean.EnvExtension

Further environment extension API; the primitives live in Lean.Environment.

Simple PersistentEnvExtension that implements exportEntriesFn using a list of entries.

Instances For
    @[specialize #[]]
    def Lean.mkStateFromImportedEntries {α σ : Type} (addEntryFn : σασ) (initState : σ) (as : Array (Array α)) :
    σ
    Instances For
      Instances For
        def Lean.SimplePersistentEnvExtension.replayOfFilter {σ : Type u_1} {α : Type u_2} (p : σαBool) (addEntryFn : σασ) :
        List ασσList α × σ

        Returns a function suitable for SimplePersistentEnvExtensionDescr.replay? that replays all new entries onto the state using addEntryFn. p should filter out entries that have already been added to the state by a prior replay of the same realizable constant.

        Instances For

          Get the list of values used to update the state of the given SimplePersistentEnvExtension in the current file.

          Instances For

            Get the current state of the given SimplePersistentEnvExtension.

            Instances For

              Set the current state of the given SimplePersistentEnvExtension. This change is not persisted across files.

              Instances For

                Modify the state of the given extension in the given environment by applying the given function. This change is not persisted across files.

                Instances For

                  Environment extension for tagging declarations. Declarations must only be tagged in the module where they were declared.

                  Instances For

                    Environment extension for mapping declarations to values. Declarations must only be inserted into the mapping in the module where they were declared.

                    Instances For
                      def Lean.mkMapDeclarationExtension {α : Type} (name : Name := by exact decl_name%) (asyncMode : EnvExtension.AsyncMode := EnvExtension.AsyncMode.async AsyncBranch.mainEnv) (exportEntriesFn : EnvironmentNameMap αOLeanLevelArray (Name × α) := fun (env : Environment) (s : NameMap α) (x : OLeanLevel) => Array.filter (fun (x : Name × α) => match x with | (n, snd) => env.contains n false) (Std.TreeMap.toArray s)) :
                      Instances For
                        def Lean.MapDeclarationExtension.insert {α : Type} (ext : MapDeclarationExtension α) (env : Environment) (declName : Name) (val : α) :
                        Instances For
                          Instances For