Un portage partiel d'elasticlunr.js vers Rust. Destiné à être utilisé pour générer des index de recherche compatibles.
Cette bibliothèque est maintenue passivement pour prendre en charge les utilisateurs existants. Les nouveaux utilisateurs sont encouragés à utiliser une bibliothèque différente telle que 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
La modification de la version minimale prise en charge de Rust n'est pas considérée comme une modification radicale à des fins semver.
La version prise en charge est limitée par la version prise en charge par nos dépendances transitives. Les versions antérieures de rustc peuvent fonctionner si vous en avez des versions plus anciennes dans votre Cargo.lock
, mais cela n'est pas testé.
Cette bibliothèque inclut une prise en charge facultative pour les langues non anglaises, voir les fonctionnalités dans Cargo.toml
. Comme dans la version JavaScript, le support linguistique est conçu pour être compatible avec les plugins lunr-langages. Certains langages utilisent une version modifiée, incluse dans le répertoire js
du référentiel.
Ce référentiel est proposé selon les termes du
à votre choix.
Sauf indication contraire explicite de votre part, toute contribution intentionnellement soumise pour inclusion dans le travail par vous, telle que définie dans la licence Apache-2.0, bénéficiera d'une double licence comme ci-dessus, sans termes ou conditions supplémentaires.
Comprend le code porté depuis elasticlunr.js Copyright (C) 2017 par Wei Song, utilisé sous licence. Voir LICENSE-JS pour plus de détails.
Comprend des listes de mots vides importées de stopwords-filter Copyright (C) 2012 David J. Brenes, utilisées sous licence. Voir MOTS DE LICENCE pour plus de détails.
Le code javascript fourni dans le référentiel (non inclus dans le package cargo) peut avoir d'autres licences.