pub struct TaskNode {
pub task: Task,
pub dependencies: Vec<String>,
pub dependents: Vec<String>,
pub blocks: Vec<String>,
pub blocked_by: Vec<String>,
pub relates_to: Vec<String>,
pub related_by: Vec<String>,
pub duplicates: Option<String>,
pub duplicated_by: Vec<String>,
}Expand description
A node in the dependency graph representing a task and its relationships.
Fields§
§task: TaskThe task data.
dependencies: Vec<String>IDs of tasks this task depends on (upstream dependencies).
dependents: Vec<String>IDs of tasks that depend on this task (downstream dependents).
blocks: Vec<String>IDs of tasks this task blocks (must complete before blocked tasks can run).
blocked_by: Vec<String>IDs of tasks that block this task (reverse of blocks).
relates_to: Vec<String>IDs of tasks this task relates to (loose coupling).
IDs of tasks that relate to this task (reverse of relates_to).
duplicates: Option<String>Task ID that this task duplicates (if any).
duplicated_by: Vec<String>IDs of tasks that duplicate this task.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TaskNode
impl RefUnwindSafe for TaskNode
impl Send for TaskNode
impl Sync for TaskNode
impl Unpin for TaskNode
impl UnsafeUnpin for TaskNode
impl UnwindSafe for TaskNode
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