package hardcaml_verify

  1. Overview
  2. Docs

Source file uid.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
open Base

module type S = sig
  type t [@@deriving sexp_of]

  include Comparable.S with type t := t
  include Stringable.S with type t := t

  val create : int -> (unit -> t) Staged.t
end

module Int = struct
  include Int

  let create starts_at =
    let uid = ref starts_at in
    Staged.stage (fun () ->
      let ret = !uid in
      Int.incr uid;
      ret)
  ;;
end
OCaml

Innovation. Community. Security.