# Functions
AddMatcherToGroup is a helper function to try to add a Matcher to any kind of MatcherGroup.
CompositeMatches flattens the matches slice to produce a single matched indices slice.
CompositeMatches flattens the matches slice to produce a single matched indices slice.
MemHash is the hash function used by go map, it utilizes available hardware instructions(behaves as aeshash if aes instruction is available).
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
RollingHash calculates the rolling murmurHash of given string based on a provided suffix hash.
ToDomain converts input pattern to a domain string, and return error if such a conversion cannot be made.
# Constants
Domain is the type of matcher that the input string must be a sub-domain or itself of the pattern.
Full is the type of matcher that the input string must exactly equal to the pattern.
PrimeRK is the prime base used in Rabin-Karp algorithm.
Regex is the type of matcher that the input string must matches the regular-expression pattern.
Substr is the type of matcher that the input string must contain the pattern as a sub-string.
# Structs
ACAutoMationMatcherGroup is an implementation of MatcherGroup.
DomainMatcherGroup is an implementation of MatcherGroup.
FullMatcherGroup is an implementation of MatcherGroup.
LinearIndexMatcher is an implementation of IndexMatcher.
A MphIndexMatcher is divided into three parts: 1.
MphMatcherGroup is an implementation of MatcherGroup.
RegexMatcher is an implementation of Matcher.
SimpleMatcherGroup is an implementation of MatcherGroup.
SubstrMatcherGroup is implementation of MatcherGroup, It is simply implmeneted to comply with the priority specification of Substr matchers.
# Interfaces
IndexMatcher is a general type of matcher thats accepts all kinds of basic matchers.
Matcher is the interface to determine a string matches a pattern.
MatcherGroup is an advanced type of matcher to accept a bunch of basic Matchers (of certain type, not all matcher types).
MatcherGroupForAll is an interface indicating a MatcherGroup could accept all types of matchers.
MatcherGroupForDomain is an interface indicating a MatcherGroup could accept DomainMatchers.
MatcherGroupForFull is an interface indicating a MatcherGroup could accept FullMatchers.
MatcherGroupForRegex is an interface indicating a MatcherGroup could accept RegexMatchers.
MatcherGroupForSubstr is an interface indicating a MatcherGroup could accept SubstrMatchers.
# Type aliases
DomainMatcher is an implementation of Matcher.
FullMatcher is an implementation of Matcher.
SubstrMatcher is an implementation of Matcher.
Type is the type of the matcher.