Up
module
Trie
:
sig
#
module type
Key =
sig
#
type
t
#
module
Part :
sig
#
type
t
#
val
hash :
t
->
int
#
val
compare :
t
->
t
->
int
#
val
t_of_sexp : Sexplib.Sexp.t
->
t
#
val
sexp_of_t :
t
->
Sexplib.Sexp.t
end
#
val
iter :
t
->
f:(
Part
.
t
->
unit)
->
unit
end
#
module type
S =
sig
#
module
Key :
sig
#
type
t
end
#
module
Part :
sig
#
type
t
include
Core.Std.Hashable
with
type
t :=
t
end
#
type
t =
#
| Node
of
(bool *
t
)
Part
.Table.t
#
val
create : unit
->
t
#
val
contains :
t
->
Key
.
t
->
bool
#
val
add :
t
->
Key
.
t
->
unit
#
val
remove :
t
->
Key
.
t
->
unit
#
val
render_as_regexp :
t
->
capture_parts:bool
->
to_quoted_string:(
Part
.
t
->
string)
->
string
end
#
module
Make :
functor
(T :
Key
)
->
S
with
type
Key.t =
T
.
t
and
type
Part
.
t
=
T
.
Part
.
t
#
module
String_trie :
S
with
type
Key.t = Core.Std.String.t
and
type
Part
.
t
= Core.Std.Char.t
end