Further environment extension API; the primitives live in Lean.Environment.
Simple PersistentEnvExtension that implements exportEntriesFn using a list of entries.
Instances For
Instances For
- name : Name
- addEntryFn : σ → α → σ
- exportEntriesFnEx? : Option (Environment → σ → List α → OLeanEntries (Array α))
- asyncMode : EnvExtension.AsyncMode
- logWrites : Bool
See
EnvExtension.logWrites.
Instances For
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
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
Instances For
Instances For
Instances For
Environment extension for mapping declarations to values. Declarations must only be inserted into the mapping in the module where they were declared.
- toEnvExtension : EnvExtension (PersistentEnvExtensionState (Name × α) (NameMap α))
- addEntryFn : NameMap α → Name × α → NameMap α
- exportEntriesFn : Environment → NameMap α → OLeanEntries (Array (Name × α))
Instances For
Instances For
Adds the entry for declName. Entries are write-once: facts derived from an entry, such as cached
type class resolution results, assume it never changes. allowOverwrite permits replacing an
existing entry, which invalidates such facts; use it only where that is justified, and say why.