pub struct Task {
pub id: TaskId,
pub task_type: String,
pub priority: TaskPriority,
pub payload: TaskPayload,
pub required_capabilities: Vec<String>,
pub timeout_ms: Option<u64>,
pub retry_count: u32,
pub max_retries: u32,
}
Expand description
Task definition
Fields§
§id: TaskId
Unique identifier for this task
task_type: String
Type of task (e.g., “compute”, “io”, “network”)
priority: TaskPriority
Priority level for task scheduling
payload: TaskPayload
Task data payload
required_capabilities: Vec<String>
List of capabilities required by agents to execute this task
timeout_ms: Option<u64>
Optional timeout in milliseconds for task execution
retry_count: u32
Current number of retry attempts
max_retries: u32
Maximum number of retry attempts allowed
Implementations§
Source§impl Task
impl Task
Sourcepub fn with_priority(self, priority: TaskPriority) -> Self
pub fn with_priority(self, priority: TaskPriority) -> Self
Set task priority
Sourcepub fn with_payload(self, payload: TaskPayload) -> Self
pub fn with_payload(self, payload: TaskPayload) -> Self
Set task payload
Sourcepub fn require_capability(self, capability: impl Into<String>) -> Self
pub fn require_capability(self, capability: impl Into<String>) -> Self
Add required capability
Sourcepub fn with_timeout(self, timeout_ms: u64) -> Self
pub fn with_timeout(self, timeout_ms: u64) -> Self
Set timeout
Sourcepub fn increment_retry(&mut self)
pub fn increment_retry(&mut self)
Increment retry count
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Task
impl !RefUnwindSafe for Task
impl Send for Task
impl Sync for Task
impl Unpin for Task
impl !UnwindSafe for Task
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