ident.ml 528 Bytes
Newer Older
1
2
module U = Encodings.Utf8
module Id = Pool.Make(U)
3
module IdSet = SortedList.Make(Id)
4
module IdMap = IdSet.Map
5
module Env = Map.Make(Id)
6
type id = Id.t
7
8
type 'a id_map = 'a IdMap.map
type fv = IdSet.t
9
10

let ident = Id.mk
11

12
13
14
15
16
let to_string id =
  U.to_string (Id.value id)

let print ppf id =
  Format.fprintf ppf "%s" (to_string id)
17

18
module Label = Ns.QName
19
20

module LabelPool = Pool.Make(Label)
21
module LabelSet = SortedList.Make(LabelPool)
22
23
24
module LabelMap = LabelSet.Map

type label = LabelPool.t
25
type 'a label_map = 'a LabelMap.map