probly-search ยท
A lightweight full-text search library that provides full control over the scoring calculations. Intended for creating small and short lifetime indices.
This library started as port of the Node library NDX.
Features
- Multiple fields full-text indexing and searching.
- Per-field score boosting.
- BM25 ranking function to rank matching documents. The same ranking function that is used by default in Lucene >= 6.0.0.
- Ability to fully customize your own scoring function by implenting the
ScoreCalculator
trait. - Trie based dynamic Inverted Index.
- Configurable tokenizer and term filter.
- Free text queries with query expansion.
- Small memory footprint, optimized for mobile devices.
Documentation
Documentation is under development. For now read the source tests.
Example
Creating an index with a document that has 2 fields. Then indexing two documents and query for one using the BM25 scoring function
let mut idx: = create_index;
let docs = vec!;
for doc in docs
let result = query;
assert_eq!;
assert_eq!;
assert_eq!;
Go through source tests for more examples.