fn inventory_contains_ingredients<'a, I: Iterator<Item = (&'a RecipeInput, u32)>>(
    ingredients: I,
    inv: &Inventory,
    recipe_amount: u32
) -> Result<Vec<(u32, InvSlotId)>, Vec<(&'a RecipeInput, u32)>>
Expand description

Determine whether the inventory contains the ingredients for a recipe. If it does, return a vec of inventory slots that contain the ingredients needed, whose positions correspond to particular recipe inputs. If items are missing, return the missing items, and how many are missing.