pub struct SessionMessage {
pub session_id: String,
pub message_id: String,
pub role: MessageRole,
pub content: String,
pub parts: Option<Vec<ContentPart>>,
pub identity: MessageIdentity,
pub tool: Option<ToolInfo>,
pub metadata: Option<BTreeMap<String, Value>>,
pub timestamp: String,
}Expand description
Complete session message.
Mirrors SessionMessage in the TS protocol. Self-contained, auditable,
and always carries identity.
Fields§
§session_id: String§message_id: String§role: MessageRole§content: StringPlain text — always present, used by simple frontends.
parts: Option<Vec<ContentPart>>Rich parts — optional, used by capable frontends.
identity: MessageIdentity§tool: Option<ToolInfo>§metadata: Option<BTreeMap<String, Value>>§timestamp: StringTrait Implementations§
Source§impl Clone for SessionMessage
impl Clone for SessionMessage
Source§fn clone(&self) -> SessionMessage
fn clone(&self) -> SessionMessage
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 SessionMessage
impl Debug for SessionMessage
Source§impl<'de> Deserialize<'de> for SessionMessage
impl<'de> Deserialize<'de> for SessionMessage
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
Auto Trait Implementations§
impl Freeze for SessionMessage
impl RefUnwindSafe for SessionMessage
impl Send for SessionMessage
impl Sync for SessionMessage
impl Unpin for SessionMessage
impl UnsafeUnpin for SessionMessage
impl UnwindSafe for SessionMessage
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