Wu_Manber.Matcher
Collection of functors for creating matchers
module type Matcher = sig ... end
Module type for Matchers.
The following are a collection of matchers for simple patterns.
module SimpleMismatch (P : Patterns.PatternWithFoldRight) : sig ... end
A utility functior used for creating matchers.
module MakeSlowMatcher (P : Patterns.PatternWithFoldRight) : sig ... end
A slow matcher which recalculates mismatch bitvectors using mismatch_bv
from the SimpleMismatch
functior.
module MakeArrayMatcher (P : Patterns.PatternWithIndexableElements) : sig ... end
A fast matcher which precalculates all possible mismatch bitvectors for a pattern and stores them in an array.
module MakeHashTblMatcher (P : Patterns.PatternWithFoldRight) : sig ... end
A fast matcher which precalculates mismatch bitvectors for characters in the pattern and stores them in an hash table. This uses Stdlib.Hashtbl
for the hash table with ~random
set to true.