Documentation

Lean.Data.Lsp.Internal

This file contains types for communication between the watchdog and the workers. These messages are not visible externally to users of the LSP server.

Most reference-related types have custom FromJson/ToJson implementations to reduce the size of the resulting JSON.

Identifier of a reference.

  • const (moduleName identName : String) : Lean.Lsp.RefIdent

    Named identifier. These are used in all references that are globally available.

  • fvar (moduleName id : String) : Lean.Lsp.RefIdent

    Unnamed identifier. These are used for all local references.

Instances For

    Shortened representation of RefIdent for more compact serialization.

    Instances For

      Converts id to its compact serialization representation.

      Equations
      Instances For

        Converts RefIdent to a JSON for RefIdentJsonRepr.

        Equations
        Instances For

          Information about the declaration surrounding a reference.

          • name : String

            Name of the declaration surrounding a reference.

          • Range of the declaration surrounding a reference.

          • selectionRange : Lean.Lsp.Range

            Selection range of the declaration surrounding a reference.

          Instances For

            Denotes the range of a reference, as well as the parent declaration of the reference. If the reference is itself a declaration, then it contains no parent declaration.

            Instances For
              Equations

              Definition site and usage sites of a reference. Obtained from Lean.Server.RefInfo.

              Instances For
                Equations
                • One or more equations did not get rendered due to their size.
                Equations
                • One or more equations did not get rendered due to their size.

                References from a single module/file

                Equations
                Instances For
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Equations
                  • One or more equations did not get rendered due to their size.

                  Used in the $/lean/ileanInfoUpdate and $/lean/ileanInfoFinal watchdog <- worker notifications. Contains the definitions and references of the file managed by a worker.

                  • version : Nat

                    Version of the file these references are from.

                  • references : Lean.Lsp.ModuleRefs

                    All references for the file.

                  Instances For

                    Used in the $/lean/importClosure watchdog <- worker notification. Contains the full import closure of the file managed by a worker.

                    Instances For

                      Used in the $/lean/importClosure watchdog -> worker notification. Informs the worker that one of its dependencies has gone stale and likely needs to be rebuilt.

                      Instances For