Skip to content

Commit c152563

Browse files
committed
only save provides with same binary name
1 parent 9e9df02 commit c152563

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

src/repository.rs

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -78,17 +78,14 @@ impl<'a> PackageRepository<'a> {
7878
let replaces = serde_json::to_string(&package.replaces).unwrap();
7979

8080
let provides = package.provides.clone().map(|vec| {
81-
vec.iter()
81+
vec.into_iter()
8282
.filter_map(|p| {
83-
if p.split_once("==").is_some()
84-
|| p.split_once("=>").is_some()
85-
|| p.split_once(":").is_some()
86-
|| *p == package.pkg_name
87-
{
88-
Some(PackageProvide::from_string(p))
89-
} else {
90-
None
91-
}
83+
let matches = p == package.pkg_name
84+
|| ["==", "=>", ":"]
85+
.iter()
86+
.find_map(|&delim| p.split_once(delim))
87+
.map_or(false, |(first, _)| first == package.pkg_name);
88+
matches.then(|| PackageProvide::from_string(&p))
9289
})
9390
.collect::<Vec<PackageProvide>>()
9491
});

0 commit comments

Comments
 (0)