我正在尝试使我的代码适应我之前的问题的解决方案。基本上,我有一个HashMap<String, HashSet<String>>
应该由人造丝的par_extend 生成。问题是键重复,在这种情况下,我希望HashSet
s 被组合,而不是被覆盖。换句话说,有没有办法在impl Extend
此处添加自定义,以便以下代码正确执行?
use std::collections::{HashMap, HashSet};
fn main() {
let mut d: HashMap<String, HashSet<String>> = HashMap::new();
d.extend(vec![1, 2].iter().map(|x| {
let mut z = HashSet::new();
z.insert(x.to_string());
return ("a".into(), z);
}));
assert_eq!(d.get("a").unwrap().len(), 2);
}