package re

  1. Overview
  2. Docs

Source file pmark.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
module Pmark = struct
  type t = int

  let equal (x : int) (y : int) = x = y
  let compare (x : int) (y : int) = compare x y
  let r = Atomic.make 1
  let gen () = Atomic.fetch_and_add r 1
  let pp = Format.pp_print_int
end

include Pmark

module Set = struct
  module Set = Set.Make (Pmark)

  let[@warning "-32"] to_list x =
    let open Set in
    to_seq x |> List.of_seq
  ;;

  include Set
end

let to_dyn = Dyn.int