25 个稳定版本 (3 个主要版本)
3.0.2 | 2023年3月17日 |
---|---|
3.0.1 | 2022年7月24日 |
3.0.0 | 2022年6月2日 |
2.3.14 | 2021年11月16日 |
0.2.1 | 2017年11月21日 |
#45 在 数据库接口 中
每月下载量 78,765
在 15 个 Crates 中使用 (直接使用 10 个)
145KB
6K SLoC
elasticlunr-rs
将 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());
最低支持的 Rust 版本
1.60.0
更改最低支持的 Rust 版本在 semver 的情况下不被视为破坏性更改。
支持版本受我们的传递依赖项支持的版本限制。如果您的 Cargo.lock
中有这些旧版本,则较早的 rustc 版本可能可以工作,但这尚未经过测试。
语言
此库包含对非英语语言的可选支持,请参阅 Cargo.toml
中的功能。与 JavaScript 版本一样,语言支持旨在与 lunr-languages 插件 兼容。某些语言使用修改后的版本,该版本包含在存储库的 js
目录中。
许可协议
本存储库在以下条款下提供:
- Apache 许可证 2.0 版,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
除非您明确声明,否则您有意提交以包含在本工作中并由您定义的 Apache-2.0 许可证的工作,将按照上述方式双重许可,不附加任何额外的条款或条件。
包含从 elasticlunr.js 端口导入的代码版权 (C) 2017 Wei Song,在许可下使用。有关详细信息,请参阅 LICENSE-JS。
包含从 stopwords-filter 端口导入的停用词列表版权 (C) 2012 David J. Brenes,在许可下使用。有关详细信息,请参阅 LICENSE-WORDS。
存储库中捆绑的 JavaScript 代码(不包括在 cargo 包中)可能具有其他许可协议。
依赖项
~3–15MB
~152K SLoC