Module Dn.Make

Parameters

Signature

type 'a decompose_fun = 'a -> (Y.t * 'a list) option
type t
val empty : t
type pattern
val pattern : 'a decompose_fun -> 'a -> pattern
val add : t -> pattern -> Z.t -> t
val rmv : t -> pattern -> Z.t -> t
type 'tree lookup_fun = 'tree -> (Y.t * 'tree list) lookup_res
val lookup : t -> 'term lookup_fun -> 'term -> Z.t list