Skip to content

Commit 3e41b6b

Browse files
authored
Merge pull request #3055 from rust-lang/revert-3054-simplify
Revert "Replace for loop with iterators"
2 parents 4f21500 + 2a9c467 commit 3e41b6b

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

src/cargo/core/resolver/encode.rs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -96,15 +96,18 @@ impl EncodableResolve {
9696
g
9797
};
9898

99-
let replacements: HashMap<_, _> = try!(live_pkgs.values()
100-
.filter_map(|&(ref id, pkg)| pkg.replace.as_ref().and_then(|replace| {
101-
assert!(pkg.dependencies.is_none());
102-
match lookup_id(replace) {
103-
Err(e) => Some(Err(e)),
104-
Ok(None) => None,
105-
Ok(Some(replace)) => Some(Ok((id.clone(), replace)))
99+
let replacements = {
100+
let mut replacements = HashMap::new();
101+
for &(ref id, ref pkg) in live_pkgs.values() {
102+
if let Some(ref replace) = pkg.replace {
103+
assert!(pkg.dependencies.is_none());
104+
if let Some(replace_id) = try!(lookup_id(replace)) {
105+
replacements.insert(id.clone(), replace_id);
106+
}
106107
}
107-
})).collect());
108+
}
109+
replacements
110+
};
108111

109112
let mut metadata = self.metadata.unwrap_or(BTreeMap::new());
110113

0 commit comments

Comments
 (0)