minecraft-command-types 0.1.0

Provides an AST like structure for Minecraft commands.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::resource_location::ResourceLocation;
use minecraft_command_types_derive::HasMacro;
use std::fmt::{Display, Formatter};

#[derive(Debug, Clone, Eq, PartialEq, Hash, HasMacro)]
pub enum RecipeType {
    All,
    Recipe(ResourceLocation),
}

impl Display for RecipeType {
    fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
        match self {
            RecipeType::All => f.write_str("*"),
            RecipeType::Recipe(recipe) => recipe.fmt(f),
        }
    }
}