[][src]Struct inkling::error::parse::validate::ValidationError

pub struct ValidationError {
    pub invalid_address_errors: Vec<InvalidAddressError>,
    pub name_space_errors: Vec<NameSpaceCollision>,
    pub variable_errors: Vec<InvalidVariableExpression>,
}

Collection of errors encountered when validating a story.

Fields

invalid_address_errors: Vec<InvalidAddressError>

Errors from invalid addresses to knots, stitchs or variables.

name_space_errors: Vec<NameSpaceCollision>

Errors from name space collisions between knots, stitches and variables.

Stitches or global variables may not have the same name as any knot in the story. Nor may stitches have the same name as any global variable.

This is to ensure that addresses are well determined. Internal addresses to stitches within knots can exclude the knot name, meaning that if a stitch and knot share a name it will not be clear which of the two an address refers to. The same problem goes for global variables.

variable_errors: Vec<InvalidVariableExpression>

Errors from expressions and conditions containing invalid variables.

Expressions must evaluate to a valid variable. For example, mathematics can only include numerical variables and will produce a numerical variable. If an expression in the story tries to add a string to an integer an error will be yielded in this collection.

Conditions likewise cannot compare different types to each other. Such errors will also be collected in this set.

See Variable for more information about valid operations and comparisons between variables.

Trait Implementations

impl Debug for ValidationError[src]

impl Display for ValidationError[src]

impl Error for ValidationError[src]

impl From<ValidationError> for ReadError[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.