FullTextSearch<T> class
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
Constructors
-
FullTextSearch({required String term, required Iterable<
T> items, bool isMatchAll = false, bool isStartsWith = true, bool ignoreCase = true, int? limit, required Tokenizer<T> tokenize, List<SearchScoring> ? additionalScorers, List<TermMatcher> ? additionalMatchers}) -
This constructor applies default scoring, but also allows you to add additional scoring rules
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 internallyitems
The list of items to search againstisMatchAll
Whether or not we should enforce that all terms interm
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 notignoreCase
Whether to ignore case when searchinglimit
The number of results to returntokenize
Determines how each item initems
should produce searchable tokensadditionalScorers
Other scorers to use in addition to the defaults -
FullTextSearch.ofStream({required String term, required Stream<
T> ? items, bool isMatchAll = false, bool isStartsWith = true, bool ignoreCase = true, int? limit, required Tokenizer<T> tokenize, List<SearchScoring> ? additionalScorers, List<TermMatcher> ? additionalMatchers}) -
FullTextSearch.scoring({required String term, required Stream<
T> items, bool isMatchAll = false, bool isStartsWith = true, bool ignoreCase = true, int? limit, required Tokenizer<T> tokenize, List<SearchScoring> ? scorers, List<TermMatcher> ? matchers}) -
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 internallyitems
The list of items to search againstisMatchAll
Whether or not we should enforce that all terms interm
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 notignoreCase
Whether to ignore case when searchinglimit
The number of results to returntokenize
Determines how each item initems
should produce searchable tokensscorers
Scorers
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- ignoreCase → bool
-
final
- isMatchAll → bool
-
final
- isStartsWith → bool
-
final
-
items
→ Stream<
T> -
final
- limit → int?
-
final
- log → Logger
-
final
-
matchers
→ List<
TermMatcher> -
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
scorers
→ List<
SearchScoring> -
final
- term → String
-
final
-
tokenize
→ Tokenizer<
T> -
final
Methods
-
execute(
) → Future< List< TermSearchResult< >T> > - Executes a search and applies isMatchAll, or sorting rules, depending on the configuration of this FullTextSearch instance
-
findResults(
) → Future< List< T> > - Executes a search and finds the results. See also execute
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
results(
) → Stream< TermSearchResult< T> > - Executes a search and returns a stream of individual term results, unsorted and unfiltered.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited