A Rust crate that adds a method to any Iterator
or IntoIterator
(such as Vec
) that converts it to a HashMap
using the trait ToHashMap
.
```rust extern crate iteratortohash_map;
use std::collections::HashMap; use iteratortohash_map::ToHashMap;
struct Person { id: i32, firstname: &'static str, lastname: &'static str, }
let brad = Person { id: 1, firstname: "Brad", lastname: "Urani", };
let barb = Person { id: 2, firstname: "Barb", lastname: "Hanover", };
let a = vec![brad, barb]; let keyfunc = |i: &Person| -> i32 { i.id }; let valuefunc = |i: &Person| -> String { i.firstname.tostring() + &" " + &i.lastname.tostring() };
let map = a.tohashmap(keyfunc, valuefunc);
```
Open a pull request!