#hash-map #key-value #order #insertion #pair #wrapper

链式散列表

一个维护插入顺序的键值对 HashMap 包装器

23 个版本

使用旧的 Rust 2015

0.5.6 2022 年 6 月 25 日
0.5.4 2021 年 1 月 8 日
0.5.3 2020 年 5 月 6 日
0.5.2 2019 年 3 月 21 日
0.0.2 2015 年 3 月 26 日

#26数据结构

Download history 746565/week @ 2024-04-15 765890/week @ 2024-04-22 713796/week @ 2024-04-29 695300/week @ 2024-05-06 777015/week @ 2024-05-13 783954/week @ 2024-05-20 741431/week @ 2024-05-27 787853/week @ 2024-06-03 814689/week @ 2024-06-10 767086/week @ 2024-06-17 787458/week @ 2024-06-24 704175/week @ 2024-07-01 791355/week @ 2024-07-08 781864/week @ 2024-07-15 814679/week @ 2024-07-22 755968/week @ 2024-07-29

3,175,374 每月下载量
用于 5,891 个crate (直接使用 266 个)

MIT/Apache

52KB
1K SLoC

Rust CI crates.io

警告:由于维护者资源不足,此项目处于维护模式。

它仍然可以正常工作,但通常不会再进行改进。

我们目前只接受以下更改:

  • 修复正确性问题
  • 保持与 Rust 或其依赖项的最新版本兼容。
  • 具有最低的审查要求,例如文档更改(因此不是全新的 API)。

一个维护插入顺序的键值对 HashMap 包装器。

文档可在 https://docs.rs/linked-hash-map 查找。


lib.rs:

一个维护插入顺序的键值对 HashMap 包装器。

示例

use linked_hash_map::LinkedHashMap;

let mut map = LinkedHashMap::new();
map.insert(2, 20);
map.insert(1, 10);
map.insert(3, 30);
assert_eq!(map[&1], 10);
assert_eq!(map[&2], 20);
assert_eq!(map[&3], 30);

let items: Vec<(i32, i32)> = map.iter().map(|t| (*t.0, *t.1)).collect();
assert_eq!(items, [(2, 20), (1, 10), (3, 30)]);

依赖项

~0–335KB