pub enum MessageItem {
Output(InputOutputMessage),
Input(InputMessage),
}Expand description
Message item within Item. Untagged; disambiguated by the role field:
the Output variant requires role: "assistant" (via AssistantRole,
which is a single-variant enum) and Input requires role in
"user" | "system" | "developer" (via InputRole). A payload with an
unknown role (e.g. "tool") or a missing role produces the generic
untagged-enum error — callers are expected to send a valid role. If you
see the “data did not match any variant of untagged enum” failure on this
type, it is almost always a role mismatch.
Variants§
Output(InputOutputMessage)
Prior assistant output echoed back (role: assistant). Tried first — its
role constraint excludes user/system/developer inputs.
Input(InputMessage)
User / system / developer input message.
Trait Implementations§
Source§impl Clone for MessageItem
impl Clone for MessageItem
Source§fn clone(&self) -> MessageItem
fn clone(&self) -> MessageItem
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 MessageItem
impl Debug for MessageItem
Source§impl<'de> Deserialize<'de> for MessageItem
impl<'de> Deserialize<'de> for MessageItem
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 MessageItem
impl PartialEq for MessageItem
Source§impl Serialize for MessageItem
impl Serialize for MessageItem
impl StructuralPartialEq for MessageItem
Auto Trait Implementations§
impl Freeze for MessageItem
impl RefUnwindSafe for MessageItem
impl Send for MessageItem
impl Sync for MessageItem
impl Unpin for MessageItem
impl UnsafeUnpin for MessageItem
impl UnwindSafe for MessageItem
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