18 个版本
0.6.3 | 2023年3月19日 |
---|---|
0.6.2 | 2022年1月23日 |
0.6.1 | 2021年4月8日 |
0.6.0 | 2021年1月4日 |
0.1.3 | 2017年9月13日 |
#22 in 数据结构
每月下载量 537,747
用于 256 个crate (106 直接)
99KB
1.5K SLoC
bimap-rs
bimap-rs
是一个用于处理双射映射的纯 Rust 库,旨在尽可能感觉像标准库数据结构的扩展。默认情况下没有外部依赖项,但 Serde 和 no_std
兼容性可以通过功能标志获得。
快速入门
要使用默认功能使用 bimap-rs
的最新版本,将以下内容添加到您的项目 Cargo.toml
文件中
[dependencies]
bimap = "0.6.3"
现在您可以运行 bimap-rs
的 Hello World!
fn main() {
// A bijective map between letters of the English alphabet and their positions.
let mut alphabet = bimap::BiMap::<char, u8>::new();
alphabet.insert('A', 1);
// ...
alphabet.insert('Z', 26);
println!("A is at position {}", alphabet.get_by_left(&'A').unwrap());
println!("{} is at position 26", alphabet.get_by_right(&26).unwrap());
}
功能标志
标志名称 | 描述 | 默认启用? |
---|---|---|
std |
标准库使用 (HashMap ) |
是 |
serde |
使用 Serde 进行序列化和反序列化 | 否 |
此 Cargo.toml
展示了如何启用和禁用这些功能。
[dependencies]
# I just want to use `bimap-rs`.
bimap = "0.6.3"
# I want to use `bimap-rs` without the Rust standard library.
bimap = { version = "0.6.3", default-features = false }
# I want to use `bimap-rs` with Serde support.
bimap = { version = "0.6.3", features = ["serde"] }
文档
bimap-rs
的最新版本文档可在 docs.rs 上找到。
贡献
感谢您对改进 bimap-rs
的兴趣!在提交问题或打开拉取请求之前,请阅读 行为准则 和 贡献指南。
语义版本控制
bimap-rs
遵循 Rust 的语义版本控制。
最低支持的 Rust 版本
bimap |
MSRV |
---|---|
v0.6.3 | 1.56.1 |
v0.6.2 | 1.56.1 |
v0.6.1 | 1.42.0 |
v0.6.0 | 1.38.0 |
v0.5.3 | 1.38.0 |
v0.5.2 | 1.38.0 |
v0.5.1 | 1.38.0 |
v0.5.0 | 1.38.0 |
v0.4.0 | 1.38.0 |
许可证
bimap-rs
在 Apache 许可证 和 MIT 许可证 下双许可。作为库用户,这意味着您可以在使用 bimap-rs
时自由选择任一许可证。作为库贡献者,这意味着您对 bimap-rs
的任何贡献都将具有类似的双许可。
依赖关系
~175KB