- Make
Query
sealed instead of abstract.
- Updated
petitparser
dependency.
- Naming consistency refactor:
ScopeQuery
is returned instead ofFieldScope
.CompareQuery
is returned instead ofFieldCompareQuery
.- Old classes are kept in compatibility mode and are deprecated.
- Added
QueryEvaluator
to help evaluating queries.
Breaking changes
FieldScope.field
,FieldCompareQuery.field
andFieldCompareQuery.operator
are now aTextQuery
.field:<exp>
andfield <operator> <exp>
:<exp>
can now be an empty string.TextQuery.isExact
andPhraseQuery.isExact
are removed.PhraseQuery
is always exact andTextQuery
never is.
Updated
- Added
SourcePosition
toQuery
, storing thestart
andend
index of the matching input.
Thanks to North101 working on #9 to make this happen!
- Upgraded
petitparser
to5.0.0
.
- Migrated to new
petitparser
API (ref
). - Deprecated non-public API
QueryParser
, useQueryGrammarDefinition.build
instead. - Fixed grammar issues #6 by North101.
- Migrated to null safety.
- nested groups
|
as alias forOR
- phrase search expression contain the separate words/phrases as a children list
- Update sources to Dart 2.3 SDK and lints.
- More lints and checks in
analysis_options.yaml
.
- Support for new
petitparser
API.
- Support for non-ASCII characters in scope and words.
- Initial version.