From c78665e4fd83a64a67a6747ec9429c74a3d4a466 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Thu, 20 Jun 2024 02:16:41 +0200 Subject: generate dot graph from recipes --- server/src/interaction.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'server/src/interaction.rs') diff --git a/server/src/interaction.rs b/server/src/interaction.rs index a4b79bd0..93f54b2d 100644 --- a/server/src/interaction.rs +++ b/server/src/interaction.rs @@ -42,6 +42,26 @@ impl Recipe { _ => None, } } + pub fn inputs(&self) -> Vec { + match self { + Recipe::Passive { input, .. } => vec![*input], + Recipe::Active { input, .. } => vec![*input], + Recipe::Instant { inputs, .. } => { + inputs.into_iter().flat_map(|e| e.to_owned()).collect() + } + } + } + pub fn outputs(&self) -> Vec { + match self { + Recipe::Passive { output, .. } => output.to_owned().into_iter().collect(), + Recipe::Active { outputs, .. } => { + outputs.into_iter().flat_map(|e| e.to_owned()).collect() + } + Recipe::Instant { outputs, .. } => { + outputs.into_iter().flat_map(|e| e.to_owned()).collect() + } + } + } pub fn supports_tile(&self, tile: TileIndex) -> bool { if let Some(tile_constraint) = self.tile() { if tile != tile_constraint { -- cgit v1.2.3-70-g09d2