Unnamed repository; edit this file 'description' to name the repository.
project-model: Don't do O(n) clones as well as O(n) search
Cormac Relf 4 months ago
parent 490d5ce · commit 4dff38c
-rw-r--r--crates/project-model/src/project_json.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/crates/project-model/src/project_json.rs b/crates/project-model/src/project_json.rs
index adc9b1a49f..8fe7885983 100644
--- a/crates/project-model/src/project_json.rs
+++ b/crates/project-model/src/project_json.rs
@@ -221,8 +221,9 @@ impl ProjectJson {
self.crates
.iter()
.filter(|krate| krate.is_workspace_member)
- .filter_map(|krate| krate.build.clone())
+ .filter_map(|krate| krate.build.as_ref())
.find(|build| build.build_file.as_std_path() == path)
+ .cloned()
}
pub fn crate_by_label(&self, label: &str) -> Option<&Crate> {