pub enum LoopError {
Stream(StreamError),
Aborted,
ToolFatal {
tool: String,
reason: String,
},
InvalidContinuation(String),
}Expand description
Why the loop terminated abnormally.
A successful run returns Ok(messages) with no error. The loop’s
natural stop condition (no more tool calls + no follow-up) does not
produce an error.
Variants§
Stream(StreamError)
Stream transport raised an unrecoverable error. The provider
implementation decides what’s recoverable; everything that bubbles
up through StreamFn::stream ends the run.
Aborted
Caller cancelled via the abort signal.
ToolFatal
A tool encountered an unrecoverable failure and requested that the loop stop immediately rather than append a recoverable context event.
InvalidContinuation(String)
Cannot continue without a starting message: run_continue was
called on an empty context, or the trailing message is assistant
(which the model would not respond to).
Trait Implementations§
Source§impl Error for LoopError
impl Error for LoopError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<StreamError> for LoopError
impl From<StreamError> for LoopError
Source§fn from(source: StreamError) -> Self
fn from(source: StreamError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for LoopError
impl RefUnwindSafe for LoopError
impl Send for LoopError
impl Sync for LoopError
impl Unpin for LoopError
impl UnsafeUnpin for LoopError
impl UnwindSafe for LoopError
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