package coq-lsp
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Language Server Protocol native server for Coq
Install
dune-project
Dependency
Authors
Maintainers
Sources
coq-lsp-0.2.4.9.1.tbz
sha256=667908bdd88f0bb1b75d2fa76a483006d600c9422a2a15297a172e62c0415cad
sha512=42f8e5ad308702f77c9dc40243acd2e656b16bdb94c302306dbb87387cc36941deccd5f52c18d1a045467030ddf86528b22819522a647eee5b9e1ac25f4a9560
doc/src/petanque_json/obj_map.ml.html
Source file obj_map.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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46module type Obj = sig val name : string type t (* Not yet *) (* val equal : t -> t -> bool *) end module type S = sig type t [@@deriving yojson] end module Make (O : Obj) : S with type t = O.t = struct type t = O.t type _t = int [@@deriving yojson] module Memo = Hashtbl.Make (Int) let memo = Memo.create 1000 let dump_memo () = let keys = Memo.to_seq_keys memo |> List.of_seq in Format.(eprintf "@[size: %d@]@\n%!" (List.length keys)); Format.(eprintf "@[<v>%a@]@\n%!" (pp_print_list pp_print_int) keys) let last_id = ref 0 let mk_id _ = incr last_id; !last_id let of_obj (s : O.t) : int = let id = mk_id s in let () = Memo.add memo id s in id let to_obj (id : int) : (O.t, _) Result.t = match Memo.find_opt memo id with | Some v -> Ok v | None -> if false then dump_memo (); Error (Format.asprintf "key %d for object %s not found" id O.name) let of_yojson json = _t_of_yojson json |> fun r -> Result.bind r to_obj let to_yojson st : Yojson.Safe.t = of_obj st |> _t_to_yojson end
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>