package merlin-lib

  1. Overview
  2. Docs
Merlin's libraries

Install

Dune Dependency

Authors

Maintainers

Sources

merlin-4.14-500.tbz
sha256=ec23f324f875520cd8897f303cc6d4e595f3d7000914d410729f16b86ad1d70e
sha512=8db22100cc0af65b08f456a2a7af84e75396f5869ee7552f1f5888a1c0279d1d85e6eecb3a677ae6f0973a99823cddba0563843ce216197255667342ef161885

doc/src/merlin-lib.ocaml_typing/saved_parts.ml.html

Source file saved_parts.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
let attribute = Location.mknoloc "merlin.saved-parts"

module H = Ephemeron.K1.Make(struct
    type t = string
    let hash = Hashtbl.hash
    let equal (a : t) (b : t) =  a = b
  end)

let table = H.create 7

let gensym =
  let counter = ref 0 in
  fun () -> incr counter; !counter

let store parts =
  let id = string_of_int (gensym ()) in
  let key = Parsetree.Pconst_integer (id, None) in
  H.add table id parts;
  key

let find = function
  | Parsetree.Pconst_integer (id, None) ->
    begin
      try H.find table id
      with Not_found -> []
    end
  | _ -> assert false
OCaml

Innovation. Community. Security.