ident.ml 525 Bytes
Newer Older
1
module U = Encodings.Utf8
2

3
4
module Id = Pool.Weak(U)
type id = Id.t
5
6
7
8
let ident = Id.mk
let to_string id = U.to_string (Id.value id)
let print ppf id = Format.fprintf ppf "%s" (to_string id)

9
module IdSet = SortedList.Make(Id)
10
module IdMap = IdSet.Map
11
module Env = Map.Make(Id)
12
13
type 'a id_map = 'a IdMap.map
type fv = IdSet.t
14

15

16

17
module Label = Ns.QName
18
19

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

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