pub enum ChatMessage {
System(String),
User(String),
Assistant(Option<String>, Option<Vec<ToolCall>>),
ToolOutput(ToolCall, ToolOutput),
Summary(String),
}
Variants§
System(String)
User(String)
Assistant(Option<String>, Option<Vec<ToolCall>>)
ToolOutput(ToolCall, ToolOutput)
Summary(String)
Implementations§
Source§impl ChatMessage
impl ChatMessage
Sourcepub const fn is_system(&self) -> bool
pub const fn is_system(&self) -> bool
Returns true if the enum is ChatMessage::System otherwise false
Sourcepub const fn is_user(&self) -> bool
pub const fn is_user(&self) -> bool
Returns true if the enum is ChatMessage::User otherwise false
Sourcepub const fn is_assistant(&self) -> bool
pub const fn is_assistant(&self) -> bool
Returns true if the enum is ChatMessage::Assistant otherwise false
Sourcepub const fn is_tool_output(&self) -> bool
pub const fn is_tool_output(&self) -> bool
Returns true if the enum is ChatMessage::ToolOutput otherwise false
Sourcepub const fn is_summary(&self) -> bool
pub const fn is_summary(&self) -> bool
Returns true if the enum is ChatMessage::Summary otherwise false
Source§impl ChatMessage
impl ChatMessage
pub fn new_system(message: impl Into<String>) -> Self
pub fn new_user(message: impl Into<String>) -> Self
pub fn new_assistant( message: Option<impl Into<String>>, tool_calls: Option<Vec<ToolCall>>, ) -> Self
pub fn new_tool_output( tool_call: impl Into<ToolCall>, output: impl Into<ToolOutput>, ) -> Self
pub fn new_summary(message: impl Into<String>) -> Self
Trait Implementations§
Source§impl Clone for ChatMessage
impl Clone for ChatMessage
Source§fn clone(&self) -> ChatMessage
fn clone(&self) -> ChatMessage
Returns a copy 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 ChatMessage
impl Debug for ChatMessage
Source§impl Display for ChatMessage
impl Display for ChatMessage
Source§impl PartialEq for ChatMessage
impl PartialEq for ChatMessage
impl StructuralPartialEq for ChatMessage
Auto Trait Implementations§
impl Freeze for ChatMessage
impl RefUnwindSafe for ChatMessage
impl Send for ChatMessage
impl Sync for ChatMessage
impl Unpin for ChatMessage
impl UnwindSafe for ChatMessage
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