pub struct ResultMessage {
pub subtype: String,
pub is_error: bool,
pub duration_ms: f64,
pub duration_api_ms: f64,
pub num_turns: u32,
pub session_id: String,
pub usage: Usage,
pub stop_reason: String,
pub extra: Value,
}Expand description
Terminal message for a completed prompt turn.
Emitted exactly once per send_message call, after all streaming content
has been delivered. Check ResultMessage::is_error to determine success.
Fields§
§subtype: StringSubtype discriminator (e.g., "success", "error").
is_error: booltrue if the turn ended in an error condition.
duration_ms: f64Wall-clock duration of the full turn in milliseconds.
duration_api_ms: f64Time spent in API calls in milliseconds.
num_turns: u32Number of agentic turns taken.
session_id: StringSession this result belongs to.
usage: UsageToken usage statistics for this turn.
stop_reason: StringFinal stop reason from the model.
extra: ValueUnknown fields preserved for forward-compatibility.
Trait Implementations§
Source§impl Clone for ResultMessage
impl Clone for ResultMessage
Source§fn clone(&self) -> ResultMessage
fn clone(&self) -> ResultMessage
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 ResultMessage
impl Debug for ResultMessage
Source§impl<'de> Deserialize<'de> for ResultMessage
impl<'de> Deserialize<'de> for ResultMessage
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
Source§impl PartialEq for ResultMessage
impl PartialEq for ResultMessage
Source§impl Serialize for ResultMessage
impl Serialize for ResultMessage
impl StructuralPartialEq for ResultMessage
Auto Trait Implementations§
impl Freeze for ResultMessage
impl RefUnwindSafe for ResultMessage
impl Send for ResultMessage
impl Sync for ResultMessage
impl Unpin for ResultMessage
impl UnsafeUnpin for ResultMessage
impl UnwindSafe for ResultMessage
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