Частичный порт elasticlunr.js на Rust. Предназначен для создания совместимых поисковых индексов.
Эта библиотека пассивно поддерживается для поддержки существующих пользователей. Новым пользователям рекомендуется использовать другую библиотеку, например Stork.
use std :: fs :: File ;
use std :: io :: Write ;
use elasticlunr :: Index ;
let mut index = Index :: new ( & [ "title" , "body" ] ) ;
index . add_doc ( "1" , & [ "This is a title" , "This is body text!" ] ) ;
// Add more documents...
let mut file = File :: create ( "out.json" ) . unwrap ( ) ;
file . write_all ( index . to_json_pretty ( ) . as_bytes ( ) ) ;
1.60.0
Изменение минимальной поддерживаемой версии Rust не считается критическим изменением для целей проверки.
Поддерживаемая версия ограничена версией, поддерживаемой нашими транзитивными зависимостями. Более ранние версии Rusc могут работать, если у вас есть более старые версии в вашем Cargo.lock
, но это не проверялось.
Эта библиотека включает дополнительную поддержку неанглийских языков, см. функции в Cargo.toml
. Как и в версии JavaScript, языковая поддержка совместима с плагинами lunr-languages. Некоторые языки используют модифицированную версию, которая включена в каталог js
репозитория.
Этот репозиторий предлагается на условиях
по вашему выбору.
Если вы явно не указали иное, любой вклад, намеренно представленный вами для включения в работу, как это определено в лицензии Apache-2.0, должен иметь двойную лицензию, как указано выше, без каких-либо дополнительных положений и условий.
Включает код, перенесенный из elasticlunr.js, авторские права (C) 2017, Wei Song, используется по лицензии. Подробности смотрите в LICENSE-JS.
Включает списки стоп-слов, перенесенные из фильтра стоп-слов. Авторские права (C) Дэвида Дж. Бренеса, 2012 г., используются по лицензии. Подробности см. в разделе ЛИЦЕНЗИОННЫЕ СЛОВА.
Связанный код JavaScript в репозитории (не включенный в грузовой пакет) может иметь другие лицензии.