11 个版本 (1 个稳定版)
使用旧的 Rust 2015
1.0.0 | 2017年10月21日 |
---|---|
0.6.0 | 2017年9月2日 |
0.5.0 | 2017年8月27日 |
0.3.2 | 2017年1月20日 |
0.2.1 | 2016年3月28日 |
#1212 in 算法
1,365 每月下载量
在 11 个crate中使用 (8 个直接使用)
18KB
217 行
bidir-map-rs
Rust 的双向映射
文档
lib.rs
:
Rust 的双向映射。
示例
use bidir_map::{BidirMap, ByFirst, BySecond};
use std::default::Default;
let mut map = BidirMap::new();
assert_eq!(map, Default::default());
map.insert(1, "a");
assert_eq!(map.get_by_first(&1), Some(&"a"));
assert_eq!(map.get_by_first(&2), None);
assert_eq!(map.get_by_second(&"a"), Some(&1));
assert_eq!(map.get_by_second(&"b"), None);
assert_eq!(map[ByFirst(&1)], "a");
assert_eq!(map[BySecond(&"a")], 1);
// These would panic:
// map[ByFirst(&2)];
// map[BySecond(&"b")];