[][src]Enum rhai::EvalAltResult

pub enum EvalAltResult {
    ErrorParsing(Box<ParseError>),
    ErrorReadingScriptFile(PathBufPositionError),
    ErrorFunctionNotFound(StringPosition),
    ErrorInFunctionCall(StringBox<EvalAltResult>, Position),
    ErrorFunctionArgsMismatch(StringusizeusizePosition),
    ErrorBooleanArgMismatch(StringPosition),
    ErrorCharMismatch(Position),
    ErrorArrayBounds(usizeINTPosition),
    ErrorStringBounds(usizeINTPosition),
    ErrorIndexingType(StringPosition),
    ErrorNumericIndexExpr(Position),
    ErrorStringIndexExpr(Position),
    ErrorImportExpr(Position),
    ErrorInExpr(Position),
    ErrorLogicGuard(Position),
    ErrorFor(Position),
    ErrorVariableNotFound(StringPosition),
    ErrorModuleNotFound(StringPosition),
    ErrorAssignmentToUnknownLHS(Position),
    ErrorAssignmentToConstant(StringPosition),
    ErrorMismatchOutputType(StringPosition),
    ErrorDotExpr(StringPosition),
    ErrorArithmetic(StringPosition),
    ErrorTooManyOperations(Position),
    ErrorTooManyModules(Position),
    ErrorStackOverflow(Position),
    ErrorTerminated(Position),
    ErrorRuntime(StringPosition),
    ErrorLoopBreak(boolPosition),
    Return(DynamicPosition),
}

Evaluation result.

All wrapped Position values represent the location in the script where the error occurs.

Currently, EvalAltResult is neither Send nor Sync. Turn on the sync feature to make it Send + Sync.

Variants

ErrorParsing(Box<ParseError>)

Syntax error.

ErrorReadingScriptFile(PathBufPositionError)

Error reading from a script file. Wrapped value is the path of the script file.

Never appears under the no_std feature.

ErrorFunctionNotFound(StringPosition)

Call to an unknown function. Wrapped value is the name of the function.

ErrorInFunctionCall(StringBox<EvalAltResult>, Position)

An error has occurred inside a called function. Wrapped values re the name of the function and the interior error.

ErrorFunctionArgsMismatch(StringusizeusizePosition)

Function call has incorrect number of arguments. Wrapped values are the name of the function, the number of parameters required and the actual number of arguments passed.

ErrorBooleanArgMismatch(StringPosition)

Non-boolean operand encountered for boolean operator. Wrapped value is the operator.

ErrorCharMismatch(Position)

Non-character value encountered where a character is required.

ErrorArrayBounds(usizeINTPosition)

Array access out-of-bounds. Wrapped values are the current number of elements in the array and the index number.

ErrorStringBounds(usizeINTPosition)

String indexing out-of-bounds. Wrapped values are the current number of characters in the string and the index number.

ErrorIndexingType(StringPosition)

Trying to index into a type that is not an array, an object map, or a string, and has no indexer function defined.

ErrorNumericIndexExpr(Position)

Trying to index into an array or string with an index that is not i64.

ErrorStringIndexExpr(Position)

Trying to index into a map with an index that is not String.

ErrorImportExpr(Position)

Trying to import with an expression that is not String.

ErrorInExpr(Position)

Invalid arguments for in operator.

ErrorLogicGuard(Position)

The guard expression in an if or while statement does not return a boolean value.

ErrorFor(Position)

The for statement encounters a type that is not an iterator.

ErrorVariableNotFound(StringPosition)

Usage of an unknown variable. Wrapped value is the name of the variable.

ErrorModuleNotFound(StringPosition)

Usage of an unknown module. Wrapped value is the name of the module.

ErrorAssignmentToUnknownLHS(Position)

Assignment to an inappropriate LHS (left-hand-side) expression.

ErrorAssignmentToConstant(StringPosition)

Assignment to a constant variable.

ErrorMismatchOutputType(StringPosition)

Returned type is not the same as the required output type. Wrapped value is the type of the actual result.

ErrorDotExpr(StringPosition)

Inappropriate member access.

ErrorArithmetic(StringPosition)

Arithmetic error encountered. Wrapped value is the error message.

ErrorTooManyOperations(Position)

Number of operations over maximum limit.

ErrorTooManyModules(Position)

Modules over maximum limit.

ErrorStackOverflow(Position)

Call stack over maximum limit.

ErrorTerminated(Position)

The script is prematurely terminated.

ErrorRuntime(StringPosition)

Run-time error encountered. Wrapped value is the error message.

ErrorLoopBreak(boolPosition)

Breaking out of loops - not an error if within a loop. The wrapped value, if true, means breaking clean out of the loop (i.e. a break statement). The wrapped value, if false, means breaking the current context (i.e. a continue statement).

Return(DynamicPosition)

Not an error: Value returned from a script via the return keyword. Wrapped value is the result value.

Implementations

impl EvalAltResult[src]

pub fn position(&self) -> Position[src]

Get the Position of this error.

pub fn set_position(&mut self, new_position: Position)[src]

Override the Position of this error.

Trait Implementations

impl Debug for EvalAltResult[src]

impl Display for EvalAltResult[src]

impl Error for EvalAltResult[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.