mte/unikernel/duniverse/ocaml-re/lib/pmark.ml

25 lines
422 B
OCaml
Raw Normal View History

2025-11-11 02:07:51 +01:00
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