#data-structures

linked-hash-map

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

20 releases

0.5.1 Jan 29, 2018
0.5.0 Jul 26, 2017
0.4.2 Mar 29, 2017
0.3.0 Aug 10, 2016
0.0.2 Mar 26, 2015

#8 in Data structures

Download history 18036/week @ 2018-10-11 22539/week @ 2018-10-18 21664/week @ 2018-10-25 26360/week @ 2018-11-01 24113/week @ 2018-11-08 27358/week @ 2018-11-15 26876/week @ 2018-11-22 25500/week @ 2018-11-29 27255/week @ 2018-12-06 31241/week @ 2018-12-13 30885/week @ 2018-12-20 19611/week @ 2018-12-27 16389/week @ 2019-01-03

58,436 downloads per month
Used in 631 crates (62 directly)

MIT/Apache

46KB
946 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

~582KB