package coq-lsp
Language Server Protocol native server for Coq
Install
Dune Dependency
Authors
Maintainers
Sources
coq-lsp-0.2.3.9.0.tbz
sha256=8776582dddfe768623870cf540ff6ba1e96a44a36e85db18ab93d238d640f92a
sha512=2837889bf99bfe715bd0e752782211a76a14aac71ed37a4fb784f4f0abe338352c9c6d8caa37daf79c036997add1cb306c523f793625b38709f3b5e245380223
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 46
module 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)"
>