Crate terminal_linked_hash_map [] [src]

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

Examples

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

Structs

Iter

An insertion-order iterator over a LinkedHashMap's entries, with immutable references to the values.

IterMut

An insertion-order iterator over a LinkedHashMap's entries, with mutable references to the values.

Keys

An insertion-order iterator over a LinkedHashMap's keys.

LinkedHashMap

A linked hash map.

Values

An insertion-order iterator over a LinkedHashMap's values.