#data-structures

linked-hash-map

A HashMap wrapper that holds key-value pairs in insertion order

21 releases

0.5.2 Mar 21, 2019
0.5.1 Jan 29, 2018
0.5.0 Jul 26, 2017
0.4.2 Mar 29, 2017
0.0.2 Mar 26, 2015

#13 in Data structures

Download history 34949/week @ 2019-01-21 36680/week @ 2019-01-28 35713/week @ 2019-02-04 41451/week @ 2019-02-11 38948/week @ 2019-02-18 44269/week @ 2019-02-25 44222/week @ 2019-03-04 45246/week @ 2019-03-11 50335/week @ 2019-03-18 44175/week @ 2019-03-25 61202/week @ 2019-04-01 66927/week @ 2019-04-08 51261/week @ 2019-04-15 70190/week @ 2019-04-22 64814/week @ 2019-04-29

265,924 downloads per month
Used in 926 crates (70 directly)

MIT/Apache

46KB
935 lines

WARNING: THIS PROJECT IS IN MAINTENANCE MODE, DUE TO INSUFFICIENT MAINTAINER RESOURCES

It works fine, but will generally no longer be improved.

We are currently only accepting changes which:

  • keep this compiling with the latest versions of Rust or its dependencies.
  • have minimal review requirements, such as documentation changes (so not totally new APIs).

A HashMap wrapper that holds key-value pairs in insertion order.

Documentation is available at https://contain-rs.github.io/linked-hash-map/linked_hash_map.


lib.rs:

A HashMap wrapper that holds key-value pairs in insertion order.

Examples

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)]);

Dependencies

~583KB