Matches items in an array with user-provided search string. The input is split into multiple terms, and there is an option
to ensure that each term is matched within the tokens.
term The search term. Will be tokenized internally
items The list of items to search against
isMatchAll Whether or not we should enforce that all terms in term are matched. eg. term="Eric Martineau" should match on "Eric" AND "Martineau"
isStartsWith Whether the search will require the search term to match the beginning of the value token or not
ignoreCase Whether to ignore case when searching
limit The number of results to return
tokenize Determines how each item in items should produce searchable tokens
This file contains term matchers - A matcher examines a search term and available tokens and determines
if there are any matches. This can include partial matches, contains, startsWith, etc. Each of these
types of matches is represented by a single TermMatcher to make it easy to add/remove them when you're
searching. For example, you might want to restrict the search to not include "contains" matches.