Enum koto_runtime::ErrorKind
source · pub enum ErrorKind {
StringError(String),
KotoError {
thrown_value: KValue,
vm: KotoVm,
},
Timeout(Duration),
UnexpectedType {
expected: String,
unexpected: Vec<KValue>,
},
InvalidBinaryOp {
lhs: KValue,
rhs: KValue,
op: BinaryOp,
},
CompileError(LoaderError),
EmptyCallStack,
MissingSequenceBuilder,
MissingStringBuilder,
}
Expand description
The different error types that can be thrown by the Koto runtime
Variants§
StringError(String)
KotoError
An error thrown by a Koto script
The value will either be a String, or a value that implements @display, in which case the @display function will be evaluated by the included VM when displaying the error.
Fields
Timeout(Duration)
UnexpectedType
InvalidBinaryOp
CompileError(LoaderError)
EmptyCallStack
MissingSequenceBuilder
MissingStringBuilder
Trait Implementations§
source§impl Error for ErrorKind
impl Error for ErrorKind
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
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<LoaderError> for ErrorKind
impl From<LoaderError> for ErrorKind
source§fn from(source: LoaderError) -> Self
fn from(source: LoaderError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for ErrorKind
impl !RefUnwindSafe for ErrorKind
impl Send for ErrorKind
impl Sync for ErrorKind
impl Unpin for ErrorKind
impl !UnwindSafe for ErrorKind
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.