#hash-map #iterator

iterator_to_hash_map

一个 Rust 库,为任何 IteratorIntoIterator (如 Vec) 添加一个方法,使用 ToHashMap 特性将其转换为 HashMap

1 个不稳定版本

使用旧的 Rust 2015

0.9.0 2016年1月13日

#hash-maps 中排名 #8

MIT 许可证

2KB

Iterator to HashMap

一个 Rust 库,为任何 IteratorIntoIterator (如 Vec) 添加一个方法,使用 ToHashMap 特性将其转换为 HashMap

extern crate iterator_to_hash_map;

use std::collections::HashMap;
use iterator_to_hash_map::ToHashMap;

struct Person {
    id: i32,
    first_name: &'static str,
    last_name: &'static str,
}

let brad = Person {
    id: 1,
    first_name: "Brad",
    last_name: "Urani",
};

let barb = Person {
    id: 2,
    first_name: "Barb",
    last_name: "Hanover",
};

let a = vec![brad, barb];
let key_func = |i: &Person| -> i32 { i.id };
let value_func = |i: &Person| -> String {
    i.first_name.to_string() + &" " + &i.last_name.to_string()
};

let map = a.to_hash_map(key_func, value_func);
# { 1: "Brad Urani", 2: "Barb Hanover" }

贡献

提交一个 pull request!

无运行时依赖