Rollup merge of #52435 - ljedrz:misc_capacity, r=estebank

Calculate the exact capacity for 2 HashMaps
This commit is contained in:
kennytm 2018-07-17 02:19:02 +08:00
commit 6af3e2d707
No known key found for this signature in database
GPG Key ID: FEF6C8051D0E013C
2 changed files with 3 additions and 2 deletions

View File

@ -51,7 +51,7 @@ pub fn build(build: &mut Build) {
build_krate("", build, &mut resolves, "src/libtest");
build_krate(&build.rustc_features(), build, &mut resolves, "src/rustc");
let mut id2name = HashMap::new();
let mut id2name = HashMap::with_capacity(build.crates.len());
for (name, krate) in build.crates.iter() {
id2name.insert(krate.id.clone(), name.clone());
}

View File

@ -220,7 +220,8 @@ pub fn write_counts(count_file: &mut File, counts: &mut HashMap<String,QueryMetr
}
pub fn write_traces(html_file: &mut File, counts_file: &mut File, traces: &Vec<Rec>) {
let mut counts : HashMap<String,QueryMetric> = HashMap::new();
let capacity = traces.iter().fold(0, |acc, t| acc + 1 + t.extent.len());
let mut counts : HashMap<String, QueryMetric> = HashMap::with_capacity(capacity);
compute_counts_rec(&mut counts, traces);
write_counts(counts_file, &mut counts);