[][src]Enum zia::ZiaError

pub enum ZiaError {
    RedundantReduction,
    RedundantDefinition,
    RedundantRefactor,
    RedundantDefinitionRemoval,
    NotAProgram,
    BadDefinition,
    CyclicReduction,
    ExpandingReduction,
    InfiniteDefinition,
    EmptyParentheses,
    AmbiguousExpression,
    DefinitionCollision,
    SettingDefinitionOfConcrete,
    ConcreteReduction,
    MultipleReductionPaths,
}

All the expected ways a Zia command could be invalid.

Variants

RedundantReduction

When specifying a reduction rule that already exists.

RedundantDefinition

When specifying a definition that already exists.

RedundantRefactor

When refactoring a symbol that hasn't been used.

RedundantDefinitionRemoval

When removing a definition from a concept with no definition.

NotAProgram

When the command cannot be interpreted as a routine.

BadDefinition

When defining an expanded expression.

CyclicReduction

When the command would complete a cycle of chained reduction rules.

ExpandingReduction

When a concept is contained within the concept that it reduces to.

InfiniteDefinition

When a concept is contained within its definition.

EmptyParentheses

When a command contains a pair of parentheses with no syntax inside.

AmbiguousExpression

When the interpreter cannot determine the tree structure of an expression.

DefinitionCollision

When trying to refactor a used symbol as another used symbol or expression.

SettingDefinitionOfConcrete

When trying to define the composition of a concrete concept.

ConcreteReduction

When trying to specify a reduction rule for a concrete concept.

MultipleReductionPaths

When trying to specify a reduction rule for a concept whose components reduce to something else.

Trait Implementations

impl Debug for ZiaError
[src]

impl Display for ZiaError
[src]

Auto Trait Implementations

impl Send for ZiaError

impl Sync for ZiaError

Blanket Implementations

impl<T> From for T
[src]

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

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

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

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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