package coq-lsp

  1. Overview
  2. Docs
Language Server Protocol native server for Coq

Install

dune-project
 Dependency

Authors

Maintainers

Sources

coq-lsp-0.2.5+9.0.tbz
sha256=11ba9a2f5c25f55fdfe1c00072f89940e35bd1441c64e2adac388a1cda53c881
sha512=b13d76d054c47354032d3371db8ff8bc2fbc78e2509596733249ebca8a2f5ce94529fcdb76cce0a353ecea26f66a52cd2b51310dad9156be10de7fe2ee66f6ba

doc/src/coq-lsp.fleche/perf.ml.html

Source file perf.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
(************************************************************************)
(* Copyright 2019 MINES ParisTech -- Dual License LGPL 2.1+ / GPL3+     *)
(* Copyright 2019-2024 Inria      -- Dual License LGPL 2.1+ / GPL3+     *)
(* Copyright 2024-2025 Emilio J. Gallego Arias -- LGPL 2.1+ / GPL3+     *)
(* Copyright 2025      CNRS                    -- LGPL 2.1+ / GPL3+     *)
(* Written by: Emilio J. Gallego Arias & coq-lsp contributors           *)
(************************************************************************)
(* Flèche => document manager: Perf information                         *)
(************************************************************************)

module Info = struct
  type t =
    { time : float  (** Original Execution Time (when not cached) *)
    ; memory : float
          (** Difference in words allocated in the heap using `Gc.quick_stat` *)
    ; cache_hit : bool  (** was the sentence cached? *)
    ; time_hash : float  (** Memo timing overhead *)
    }
end

module Sentence = struct
  type t =
    { range : Lang.Range.t
    ; info : Info.t
    }
end

type t =
  { summary : string
  ; timings : Sentence.t list
  }