module Make (Str : STRING) : S 
  with type string_ = Str.t
  and type char_ = Str.char_
type char_ 
type string_ 
Edit Distance
val edit_distance : string_ -> string_ -> int
Edition distance between two strings. This satisfies the classical
     distance axioms: it is always positive, symmetric, and satisfies
     the formula distance a b + distance b c >= distance a c
Automaton
  An automaton, built from a string s and a limit n, that accepts
  every string that is at distance at most n from s.
type automaton 
Levenshtein automaton
val of_string : limit:int -> string_ -> automaton
Build an automaton from a string, with a maximal distance 
limit.
      The automaton will accept strings whose 
CCLevenshtein.S.edit_distance to the
      parameter is at most 
limit.
 
val of_list : limit:int -> char_ list -> automaton
Build an automaton from a list, with a maximal distance limit
val debug_print : (Pervasives.out_channel -> char_ -> unit) ->
       Pervasives.out_channel -> automaton -> unit
Output the automaton's structure on the given channel.
val match_with : automaton -> string_ -> bool
match_with a s matches the string s against a, and returns
      true if the distance from s to the word represented by a is smaller
      than the limit used to build a
Index for one-to-many matching
module Index: sig .. end