pub enum MessageContent {
Binary(Vec<u8>),
Text(String),
Json(Value),
AgentRequest {
method: String,
params: Value,
},
AgentResponse {
result: Value,
},
ToolCall {
name: String,
arguments: Value,
},
ToolResult {
output: String,
error: Option<String>,
},
Empty,
}Expand description
Message content types for typed payloads.
This enum provides type-safe message content variants for different communication patterns between agents.
Variants§
Binary(Vec<u8>)
Raw binary data
Text(String)
UTF-8 text content
Json(Value)
JSON-serialized structured data
AgentRequest
Agent request (RPC-style)
AgentResponse
Agent response
ToolCall
Tool invocation
ToolResult
Tool execution result
Empty
Empty message (e.g., heartbeat, acknowledgment)
Implementations§
Trait Implementations§
Source§impl Clone for MessageContent
impl Clone for MessageContent
Source§fn clone(&self) -> MessageContent
fn clone(&self) -> MessageContent
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 MessageContent
impl Debug for MessageContent
Source§impl<'de> Deserialize<'de> for MessageContent
impl<'de> Deserialize<'de> for MessageContent
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 MessageContent
impl PartialEq for MessageContent
Source§impl Serialize for MessageContent
impl Serialize for MessageContent
impl StructuralPartialEq for MessageContent
Auto Trait Implementations§
impl Freeze for MessageContent
impl RefUnwindSafe for MessageContent
impl Send for MessageContent
impl Sync for MessageContent
impl Unpin for MessageContent
impl UnwindSafe for MessageContent
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