The hierarchy of Lean snapshot types
Snapshot after command elaborator has returned. Also contains diagnostics from the elaborator's main task. Asynchronous elaboration tasks may not yet be finished.
- cmdState : Elab.Command.State
Resulting elaboration state.
Instances For
Equations
- Lean.Language.Lean.instToSnapshotTreeCommandResultSnapshot = { toSnapshotTree := fun (s : Lean.Language.Lean.CommandResultSnapshot) => { element := s.toSnapshot, children := #[] } }
State before a command is elaborated. This is separate from CommandParsedSnapshot
so that all
snapshots belonging to a command are grouped below a task with the command's syntax tree.
- elabSnap : SnapshotTask DynamicSnapshot
Snapshot for incremental reporting and reuse during elaboration, type dependent on specific elaborator.
- resultSnap : SnapshotTask CommandResultSnapshot
State after command elaborator has returned.
- infoTreeSnap : SnapshotTask SnapshotLeaf
State after all elaborator tasks are finished. In particular, contains the complete info tree.
- reportSnap : SnapshotTask SnapshotTree
Additional, untyped snapshots used for reporting, not reuse.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
State after a command has been parsed.
- stx : Syntax
Syntax tree of the command.
- parserState : Parser.ModuleParserState
Resulting parser state.
- elabSnap : CommandElaboratingSnapshot
State before the command is elaborated. This snapshot is always fulfilled immediately.
- nextCmdSnap? : Option (SnapshotTask CommandParsedSnapshot)
Next command, unless this is a terminal command.
Instances For
State after successful importing.
- cmdState : Elab.Command.State
The resulting initial elaboration state.
- firstCmdSnap : SnapshotTask CommandParsedSnapshot
First command task (there is always at least a terminal command).
Instances For
State after the module header has been processed including imports.
- metaSnap : SnapshotTask SnapshotLeaf
Holds produced diagnostics and info tree. Separate snapshot so that it can be tagged with the header syntax, which should not be done for this snapshot containing
firstCmdSnap
. - result? : Option HeaderProcessedState
State after successful importing.
Instances For
Equations
- One or more equations did not get rendered due to their size.
State after successfully parsing the module header.
- parserState : Parser.ModuleParserState
Resulting parser state.
- processedSnap : SnapshotTask HeaderProcessedSnapshot
Header processing task.
Instances For
State after the module header has been parsed.
- metaSnap : SnapshotTask SnapshotLeaf
Holds produced diagnostics. Separate snapshot so that it can be tagged with the header syntax, which should not be done for this snapshot containing
firstCmdSnap
. - ictx : Parser.InputContext
Parser input context supplied by the driver, stored here for incremental parsing.
- stx : Syntax
Resulting syntax tree.
- result? : Option HeaderParsedState
State after successful parsing.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Shortcut accessor to the final header state, if successful.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Initial snapshot of the Lean language processor: a "header parsed" snapshot.