diff options
| author | nieboczek <bartekkoraliki@gmail.com> | 2025-12-16 15:26:02 +0100 |
|---|---|---|
| committer | nieboczek <bartekkoraliki@gmail.com> | 2025-12-16 15:30:01 +0100 |
| commit | 348e44880c81f1d223f53ab11897bae427073d42 (patch) | |
| tree | 81ff7f3a167cdd5a4652f85441dc4607c317081b /server/data/src/book | |
| parent | 6419d8c8139d697af309b7db2e698effa8290582 (diff) | |
| download | hurrycurry-348e44880c81f1d223f53ab11897bae427073d42.tar hurrycurry-348e44880c81f1d223f53ab11897bae427073d42.tar.bz2 hurrycurry-348e44880c81f1d223f53ab11897bae427073d42.tar.zst | |
Return an Iterator over recipe inputs and outputs instead of a Vec
Diffstat (limited to 'server/data/src/book')
| -rw-r--r-- | server/data/src/book/recipe_diagram.rs | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/server/data/src/book/recipe_diagram.rs b/server/data/src/book/recipe_diagram.rs index b6639657..2c203f95 100644 --- a/server/data/src/book/recipe_diagram.rs +++ b/server/data/src/book/recipe_diagram.rs @@ -59,20 +59,10 @@ pub fn recipe_diagram( while let Some(item) = need.pop_first() { let mut found_recipe = false; for (ri, r) in data.recipes() { - if r.outputs().contains(&item) { + if r.outputs().any(|i| i == item) { let gr = GraphRecipe { - inputs: r - .inputs() - .iter() - .filter(|i| !ambient_items.contains(i)) - .copied() - .collect(), - outputs: r - .outputs() - .iter() - .filter(|i| !ambient_items.contains(i)) - .copied() - .collect(), + inputs: r.inputs().filter(|i| !ambient_items.contains(i)).collect(), + outputs: r.outputs().filter(|i| !ambient_items.contains(i)).collect(), index: ri, }; need.extend(gr.inputs.iter().filter(|i| !have.contains(i))); |