pub struct TaskTree {
pub name: String,
pub spec: Option<String>,
pub priority: Option<PriorityValue>,
pub children: Option<Vec<TaskTree>>,
pub depends_on: Option<Vec<String>>,
pub task_id: Option<i64>,
pub status: Option<TaskStatus>,
pub active_form: Option<String>,
pub parent_id: Option<Option<i64>>,
}Expand description
Hierarchical task definition with nested children
Fields§
§name: StringTask name (used as identifier for lookups)
spec: Option<String>Optional task specification/description
priority: Option<PriorityValue>Optional priority level
children: Option<Vec<TaskTree>>Nested child tasks (direct hierarchy expression)
depends_on: Option<Vec<String>>Task dependencies by name (name-based references)
task_id: Option<i64>Optional explicit task ID (for forced updates)
status: Option<TaskStatus>Optional task status (for TodoWriter compatibility)
active_form: Option<String>Optional active form description (for TodoWriter compatibility) Used for UI display when task is in_progress
parent_id: Option<Option<i64>>Explicit parent task ID
- None: use default behavior (auto-parent to focused task for new root tasks)
- Some(None): explicitly create as root task (no parent)
- Some(Some(id)): explicitly set parent to task with given ID
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TaskTree
impl<'de> Deserialize<'de> for TaskTree
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
impl StructuralPartialEq for TaskTree
Auto Trait Implementations§
impl Freeze for TaskTree
impl RefUnwindSafe for TaskTree
impl Send for TaskTree
impl Sync for TaskTree
impl Unpin for TaskTree
impl UnwindSafe for TaskTree
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more