pub enum Message {
User {
content: Vec<Content>,
timestamp: u64,
},
Assistant {
content: Vec<Content>,
stop_reason: StopReason,
model: String,
provider: String,
usage: Usage,
timestamp: u64,
error_message: Option<String>,
},
ToolResult {
tool_call_id: String,
tool_name: String,
content: Vec<Content>,
is_error: bool,
timestamp: u64,
},
}Variants§
Implementations§
Source§impl Message
impl Message
pub fn user(text: impl Into<String>) -> Message
pub fn role(&self) -> &str
Sourcepub fn is_context_overflow(&self) -> bool
pub fn is_context_overflow(&self) -> bool
Check if this assistant message represents a context overflow error.
Some providers (SSE-based: Anthropic, OpenAI) return overflow as a
StopReason::Error message rather than an HTTP error. This method
checks the error_message field against known overflow patterns.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Message
impl<'de> Deserialize<'de> for Message
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Message, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Message, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<Message> for AgentMessage
impl From<Message> for AgentMessage
Source§fn from(m: Message) -> AgentMessage
fn from(m: Message) -> AgentMessage
Converts to this type from the input type.
Source§impl Serialize for Message
impl Serialize for Message
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for Message
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnsafeUnpin for Message
impl UnwindSafe for Message
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