pub struct ItemDatabase {
pub definitions: HashMap<u64, ItemDefinition>,
pub recipes: HashMap<u64, RecipeDefinition>,
pub loot_tables: HashMap<u64, LootTable>,
pub item_sets: HashMap<u64, ItemSet>,
pub affix_pool: AffixPool,
pub vendors: HashMap<u64, VendorDefinition>,
pub next_id: u64,
}Fields§
§definitions: HashMap<u64, ItemDefinition>§recipes: HashMap<u64, RecipeDefinition>§loot_tables: HashMap<u64, LootTable>§item_sets: HashMap<u64, ItemSet>§affix_pool: AffixPool§vendors: HashMap<u64, VendorDefinition>§next_id: u64Implementations§
Source§impl ItemDatabase
impl ItemDatabase
pub fn new() -> Self
pub fn alloc_id(&mut self) -> u64
pub fn add_definition(&mut self, def: ItemDefinition)
pub fn add_recipe(&mut self, recipe: RecipeDefinition)
pub fn add_loot_table(&mut self, lt: LootTable)
pub fn add_set(&mut self, set: ItemSet)
pub fn get_definition(&self, id: u64) -> Option<&ItemDefinition>
pub fn search(&self, filter: &ItemFilter) -> Vec<&ItemDefinition>
pub fn bulk_update_prices(&mut self, factor: f32)
pub fn stats_summary(&self) -> DatabaseStats
Trait Implementations§
Source§impl Clone for ItemDatabase
impl Clone for ItemDatabase
Auto Trait Implementations§
impl Freeze for ItemDatabase
impl RefUnwindSafe for ItemDatabase
impl Send for ItemDatabase
impl Sync for ItemDatabase
impl Unpin for ItemDatabase
impl UnsafeUnpin for ItemDatabase
impl UnwindSafe for ItemDatabase
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.