pub struct ResourceRequirement {
pub resource_type: String,
pub quantity: i32,
pub candidates: Vec<String>,
pub required_skills: Vec<String>,
}Expand description
A resource requirement for an activity.
Specifies what type and quantity of resources are needed, with optional candidate filtering and skill requirements.
Fields§
§resource_type: StringRequired resource type (e.g., “Machine”, “Operator”).
quantity: i32Number of resource units needed simultaneously.
candidates: Vec<String>Specific resource IDs that can fulfill this requirement. Empty = any resource of the correct type.
required_skills: Vec<String>Required skills (matched against Resource.skills).
Implementations§
Source§impl ResourceRequirement
impl ResourceRequirement
Sourcepub fn new(resource_type: impl Into<String>) -> Self
pub fn new(resource_type: impl Into<String>) -> Self
Creates a new requirement for one unit of a resource type.
Sourcepub fn with_quantity(self, quantity: i32) -> Self
pub fn with_quantity(self, quantity: i32) -> Self
Sets the required quantity.
Sourcepub fn with_candidates(self, candidates: Vec<String>) -> Self
pub fn with_candidates(self, candidates: Vec<String>) -> Self
Adds candidate resource IDs.
Sourcepub fn with_skill(self, skill: impl Into<String>) -> Self
pub fn with_skill(self, skill: impl Into<String>) -> Self
Adds a required skill.
Trait Implementations§
Source§impl Clone for ResourceRequirement
impl Clone for ResourceRequirement
Source§fn clone(&self) -> ResourceRequirement
fn clone(&self) -> ResourceRequirement
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ResourceRequirement
impl Debug for ResourceRequirement
Source§impl<'de> Deserialize<'de> for ResourceRequirement
impl<'de> Deserialize<'de> for ResourceRequirement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ResourceRequirement
impl RefUnwindSafe for ResourceRequirement
impl Send for ResourceRequirement
impl Sync for ResourceRequirement
impl Unpin for ResourceRequirement
impl UnsafeUnpin for ResourceRequirement
impl UnwindSafe for ResourceRequirement
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