pub enum RuntimeError {
UndefinedVariable {
name: String,
position: Option<Position>,
},
UndefinedFunction {
name: String,
position: Option<Position>,
},
TypeMismatch {
message: String,
position: Option<Position>,
},
DivisionByZero {
position: Option<Position>,
},
WrongArgumentCount {
expected: usize,
actual: usize,
position: Option<Position>,
},
InvalidArgument {
message: String,
},
ReturnOutsideFunction,
StackOverflow {
max_depth: usize,
},
}Expand description
Errors that occur during runtime execution.
Variants§
UndefinedVariable
Undefined variable
Fields
UndefinedFunction
Undefined function
Fields
TypeMismatch
Type mismatch in operation
Fields
DivisionByZero
Division by zero
WrongArgumentCount
Wrong number of arguments
Fields
InvalidArgument
Invalid argument to function
ReturnOutsideFunction
Return from function (used internally for control flow)
StackOverflow
Stack overflow from too deep recursion
Implementations§
Source§impl RuntimeError
impl RuntimeError
Sourcepub fn undefined_variable(name: impl Into<String>) -> Self
pub fn undefined_variable(name: impl Into<String>) -> Self
Create an UndefinedVariable error without position.
Sourcepub fn undefined_variable_at(
name: impl Into<String>,
position: Position,
) -> Self
pub fn undefined_variable_at( name: impl Into<String>, position: Position, ) -> Self
Create an UndefinedVariable error with position.
Sourcepub fn undefined_function(name: impl Into<String>) -> Self
pub fn undefined_function(name: impl Into<String>) -> Self
Create an UndefinedFunction error without position.
Sourcepub fn type_mismatch(message: impl Into<String>) -> Self
pub fn type_mismatch(message: impl Into<String>) -> Self
Create a TypeMismatch error without position.
Sourcepub fn type_mismatch_at(message: impl Into<String>, position: Position) -> Self
pub fn type_mismatch_at(message: impl Into<String>, position: Position) -> Self
Create a TypeMismatch error with position.
Sourcepub fn invalid_argument(message: impl Into<String>) -> Self
pub fn invalid_argument(message: impl Into<String>) -> Self
Create an InvalidArgument error.
Sourcepub fn wrong_argument_count(expected: usize, actual: usize) -> Self
pub fn wrong_argument_count(expected: usize, actual: usize) -> Self
Create a WrongArgumentCount error without position.
Trait Implementations§
Source§impl Clone for RuntimeError
impl Clone for RuntimeError
Source§fn clone(&self) -> RuntimeError
fn clone(&self) -> RuntimeError
Returns a duplicate 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 RuntimeError
impl Debug for RuntimeError
Source§impl Display for RuntimeError
impl Display for RuntimeError
Source§impl Error for RuntimeError
impl Error for RuntimeError
1.30.0 · 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<RuntimeError> for FiddlerError
impl From<RuntimeError> for FiddlerError
Source§fn from(source: RuntimeError) -> Self
fn from(source: RuntimeError) -> Self
Converts to this type from the input type.
Source§impl PartialEq for RuntimeError
impl PartialEq for RuntimeError
impl StructuralPartialEq for RuntimeError
Auto Trait Implementations§
impl Freeze for RuntimeError
impl RefUnwindSafe for RuntimeError
impl Send for RuntimeError
impl Sync for RuntimeError
impl Unpin for RuntimeError
impl UnsafeUnpin for RuntimeError
impl UnwindSafe for RuntimeError
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