1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
type t = Trie.path * int
let counter = ref 0
let fresh path =
counter := !counter + 1;
path, !counter
let pp fmt (sym, ix) =
Format.fprintf fmt "%a%i" Trie.pp_path sym ix
let show x = Format.asprintf "%a" pp x
let compare = compare
let repr : t Repr.t =
Repr.pair (Repr.list Repr.string) Repr.int