Documentation

Lean.Server.References

Representing collected and deduplicated definitions and usages #

structure Lean.Server.Reference :
Type
Instances For
    Equations
    • Lean.Server.instInhabitedReference = { default := { ident := default, aliases := default, range := default, stx := default, ci := default, info := default, isBinder := default } }
    structure Lean.Server.RefInfo :
    Type
    Instances For
      Equations
      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.
      Equations
      • One or more equations did not get rendered due to their size.
      Equations
      Equations
      Equations
      • One or more equations did not get rendered due to their size.
      Equations
      Equations
      • One or more equations did not get rendered due to their size.
      structure Lean.Server.Ilean :
      Type

      Content of individual .ilean files

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

        Collecting and deduplicating definitions and usages #

        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.

        The FVarIds of a function parameter in the function's signature and body differ. However, they have TermInfo nodes with binder := true in the exact same position. Moreover, macros such as do-reassignment x := e may create chains of variable definitions where a helper definition overlaps with a use of a variable.

        This function changes every such group to use a single FVarId (the head of the chain/DAG) and gets rid of duplicate definitions.

        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.
        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.
        Equations
        • One or more equations did not get rendered due to their size.
        def Lean.Server.findModuleRefs (text : Lean.FileMap) (trees : Array Lean.Elab.InfoTree) (localVars : optParam Bool true) (allowSimultaneousBinderUse : optParam Bool false) :
        Equations
        • One or more equations did not get rendered due to their size.

        Collecting and maintaining reference info from different sources #

        structure Lean.Server.References :
        Type
        Instances For
          Equations
          Equations
          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.
          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.
          Equations
          • One or more equations did not get rendered due to their size.
          def Lean.Server.References.referringTo (self : Lean.Server.References) (identModule : Lean.Name) (ident : Lean.Lsp.RefIdent) (srcSearchPath : Lean.SearchPath) (includeDefinition : optParam Bool true) :
          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.
          def Lean.Server.References.definitionsMatching {α : Type} (self : Lean.Server.References) (srcSearchPath : Lean.SearchPath) (filter : Lean.NameOption α) (maxAmount? : optParam (Option Nat) none) :
          Equations
          • One or more equations did not get rendered due to their size.