pub enum TaskLifecycle {
Submitted,
Working,
Completed,
Failed,
Canceled,
}Expand description
The A2A task lifecycle state vocabulary (DW-114). The states follow
the A2A Protocol Specification draft: submitted, working,
completed, failed, canceled. The legal transitions between
them are enforced by TaskStateMachine.
Variants§
Submitted
A task has been submitted to the agent (the initial state).
Working
The agent is processing the task.
Completed
The task completed successfully; the result is available. Terminal state.
Failed
The task failed; the error is available. Terminal state.
Canceled
The task was canceled by the caller. Terminal state.
Implementations§
Source§impl TaskLifecycle
impl TaskLifecycle
Sourcepub fn parse_state(s: &str) -> Option<Self>
pub fn parse_state(s: &str) -> Option<Self>
Parse a wire-name string into a state. Returns None for an unknown name (the spec is not frozen, so unknown states are tolerated rather than rejected).
Sourcepub fn is_terminal(&self) -> bool
pub fn is_terminal(&self) -> bool
Whether this state is terminal (no transitions out).
Sourcepub fn can_transition_to(&self, target: TaskLifecycle) -> bool
pub fn can_transition_to(&self, target: TaskLifecycle) -> bool
Whether the transition self -> target is legal per the A2A
task lifecycle state machine.
Trait Implementations§
Source§impl Clone for TaskLifecycle
impl Clone for TaskLifecycle
Source§fn clone(&self) -> TaskLifecycle
fn clone(&self) -> TaskLifecycle
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TaskLifecycle
impl Debug for TaskLifecycle
Source§impl PartialEq for TaskLifecycle
impl PartialEq for TaskLifecycle
impl Copy for TaskLifecycle
impl Eq for TaskLifecycle
impl StructuralPartialEq for TaskLifecycle
Auto Trait Implementations§
impl Freeze for TaskLifecycle
impl RefUnwindSafe for TaskLifecycle
impl Send for TaskLifecycle
impl Sync for TaskLifecycle
impl Unpin for TaskLifecycle
impl UnwindSafe for TaskLifecycle
Blanket Implementations§
§impl<T> AnyExt for T
impl<T> AnyExt for T
§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind reference§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable reference§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointer§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer§fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
T behind Box pointer§fn downcast_move<T>(this: Self) -> Option<T>
fn downcast_move<T>(this: Self) -> Option<T>
Self to T,
useful only in generic context as a workaround for specializationSource§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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