azalea_inventory/default_components/
mod.rs1pub mod generated;
2
3use azalea_registry::Item;
4
5use crate::components::DataComponentTrait;
6
7pub trait DefaultableComponent: DataComponentTrait {
10 fn default_for_item(item: Item) -> Option<Self>
11 where
12 Self: Sized;
13}
14impl<T: DataComponentTrait> DefaultableComponent for T {
15 default fn default_for_item(_item: Item) -> Option<Self> {
16 None
17 }
18}
19pub fn get_default_component<T: DefaultableComponent>(item: Item) -> Option<T> {
20 T::default_for_item(item)
21}