summaryrefslogtreecommitdiff
path: root/lib/tries.mli
blob: 342c81ecdcbd694d14dd48f134f79cacc73bca55 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34





module Make :
  functor (X : Set.OrderedType) ->
    functor (Y : Map.OrderedType) ->
sig
     
  type t 
    
  val empty : t
      
  (* Work on labels, not on paths. *)

  val map : t -> Y.t -> t

  val xtract : t -> X.t list
    
  val dom : t -> Y.t list

  val in_dom : t -> Y.t -> bool

  (* Work on paths, not on labels. *)

  val add : t -> Y.t list * X.t -> t
  
  val rmv : t -> Y.t list * X.t -> t 

  val app : ((Y.t list * X.t) -> unit) -> t -> unit
    
  val to_list : t -> (Y.t list * X.t) list
end