[][src]Enum inkling::InklingError

pub enum InklingError {
    Internal(InternalError),
    InvalidChoice {
        selection: usize,
        presented_choices: Vec<Choice>,
    },
    InvalidMove {
        knot: String,
        stitch: Option<String>,
    },
    OutOfChoices {
        address: Address,
    },
    OutOfContent,
    ResumeBeforeStart,
    ResumeWithoutChoice,
    StartOnStoryInProgress,
}

Errors from running a story.

This struct mostly concerns errors which will be encountered due to some mistake with the story or user input.

OutOfChoices and OutOfContent are runtime errors from the story running out of content to display. This is likely due to the story returning to a single knot or stitch multiple times, consuming all of its choices if no fallback choice has been added. These issues should be taken into account when writing the story: if content will be returned to it is important to keep track of how many times this is allowed to happen, or have a fallback in place.

All internal errors are contained in the Internal variant. These concern everything that went wrong due to some issue within inkling itself. If you encounter any, please open an issue on Github.

Variants

Internal(InternalError)

Internal errors caused by inkling.

InvalidChoice

An invalid choice index was given to resume the story with.

Fields of InvalidChoice

selection: usize

Choice input by the user to resume the story with.

presented_choices: Vec<Choice>

List of choices that were available for the selection

InvalidMove

Tried to move to an invalid knot or stitch.

Fields of InvalidMove

knot: Stringstitch: Option<String>
OutOfChoices

No choices or fallback choices were available in a story branch at the given address.

Fields of OutOfChoices

address: Address
OutOfContent

No content was available for the story to continue from.

ResumeBeforeStart

Tried to resume a story that has not been started.

ResumeWithoutChoice

Tried to resume a story with a choice, but no choice was prompted.

StartOnStoryInProgress

Tried to start a story that is already in progress.

Trait Implementations

impl Clone for InklingError[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Display for InklingError[src]

impl Debug for InklingError[src]

impl Error for InklingError[src]

fn description(&self) -> &str1.0.0[src]

This method is soft-deprecated. Read more

fn cause(&self) -> Option<&dyn Error>1.0.0[src]

Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

The lower-level cause of this error, if any. Read more

fn source(&self) -> Option<&(dyn Error + 'static)>1.30.0[src]

The lower-level source of this error, if any. Read more

Auto Trait Implementations

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.

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

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

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