pub mod ability; pub mod data_libraries; pub mod effect_parameter; pub mod item; pub mod move_data; mod nature; pub mod species; pub use data_libraries::*; pub use effect_parameter::EffectParameter; pub use item::*; pub use move_data::*; pub use nature::*; pub use species::*; pub type LevelInt = u8; /// A unique key that can be used to store a reference to a type. Opaque reference to a byte /// internally. #[derive(Debug, Copy, Clone, Eq, PartialEq, Default, Hash)] pub struct TypeIdentifier { /// The unique internal value. val: u8, } impl From for TypeIdentifier { fn from(val: u8) -> Self { Self { val } } } impl From for u8 { fn from(id: TypeIdentifier) -> Self { id.val } }