pub struct SessionLog {
output: Option<File>,
}Expand description
llimorse::ChatListener implementation to keep a log in a file.
Fields§
§output: Option<File>Where to write the log output
Implementations§
Source§impl SessionLog
impl SessionLog
Sourcepub fn load<P: AsRef<Path>>(load_from: P) -> Result<Vec<ChatMessage>>
pub fn load<P: AsRef<Path>>(load_from: P) -> Result<Vec<ChatMessage>>
Load the log from load_from.
This log can be applied via llimorse::Agent::push_history().
Sourcepub fn null() -> Self
pub fn null() -> Self
Create a null log (i.e. does not store anything).
This helps creating an Agent<SessionLog> that can both store a log or not.
Sourcefn do_log(&mut self, message: &ChatMessage) -> Result<()>
fn do_log(&mut self, message: &ChatMessage) -> Result<()>
Log the given message to the output, raising errors.
Trait Implementations§
Source§impl ChatListener for SessionLog
impl ChatListener for SessionLog
Source§fn log_message(&mut self, message: &ChatMessage)
fn log_message(&mut self, message: &ChatMessage)
The given chat message is added to the chat history; log it.
Source§fn log_messages(&mut self, messages: &[ChatMessage])
fn log_messages(&mut self, messages: &[ChatMessage])
Log more than a single message at once. Read more
Auto Trait Implementations§
impl Freeze for SessionLog
impl RefUnwindSafe for SessionLog
impl Send for SessionLog
impl Sync for SessionLog
impl Unpin for SessionLog
impl UnsafeUnpin for SessionLog
impl UnwindSafe for SessionLog
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