/* * rocie-server * * An enterprise grocery management system - server * * The version of the OpenAPI document: 0.1.0 * Contact: benedikt.peetz@b-peetz.de * Generated by: https://openapi-generator.tech */ use crate::models; use serde::{Deserialize, Serialize}; /// CooklangRecipe : A complete recipe The recipes do not have a name. You give it externally or maybe use some metadata key. The recipe returned from parsing is a [`ScalableRecipe`]. The difference between [`ScalableRecipe`] and [`ScaledRecipe`] is in the values of the quantities of ingredients, cookware and timers. The parser returns [`ScalableValue`]s and after scaling, these are converted to regular [`Value`]s. #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] pub struct CooklangRecipe { /// All the cookware #[serde(rename = "cookware")] pub cookware: Vec, /// All the ingredients #[serde(rename = "ingredients")] pub ingredients: Vec, /// Metadata as read from preamble #[serde(rename = "metadata")] pub metadata: models::Metadata, /// Each of the sections If no sections declared, a section without name is the default. #[serde(rename = "sections")] pub sections: Vec, /// All the timers #[serde(rename = "timers")] pub timers: Vec, } impl CooklangRecipe { /// A complete recipe The recipes do not have a name. You give it externally or maybe use some metadata key. The recipe returned from parsing is a [`ScalableRecipe`]. The difference between [`ScalableRecipe`] and [`ScaledRecipe`] is in the values of the quantities of ingredients, cookware and timers. The parser returns [`ScalableValue`]s and after scaling, these are converted to regular [`Value`]s. pub fn new(cookware: Vec, ingredients: Vec, metadata: models::Metadata, sections: Vec, timers: Vec) -> CooklangRecipe { CooklangRecipe { cookware, ingredients, metadata, sections, timers, } } }