pub trait Resource: Send + Sync {
// Required methods
fn id(&self) -> ResourceId;
fn market_price(&self) -> Gold;
fn set(&mut self, value: u32);
fn as_u32(&self) -> u32;
// Provided methods
fn clamp(&mut self, min: u32, max: u32) { ... }
fn as_f64(&self) -> f64 { ... }
fn as_resources(&self) -> Resources
where Self: Sized { ... }
fn is_silo_resource(&self) -> bool { ... }
fn is_warehouse_resource(&self) -> bool { ... }
}Required Methods§
fn id(&self) -> ResourceId
fn market_price(&self) -> Gold
fn set(&mut self, value: u32)
fn as_u32(&self) -> u32
Provided Methods§
fn clamp(&mut self, min: u32, max: u32)
fn as_f64(&self) -> f64
fn as_resources(&self) -> Resourceswhere
Self: Sized,
fn is_silo_resource(&self) -> bool
fn is_warehouse_resource(&self) -> bool
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".