[][src]Enum zia::ZiaError

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

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.

BadDefinition

When defining an expanded expression.

CyclicReduction

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

CannotExpandFurther

When syntax tree cannot be expanded further

CannotReduceFurther

When syntax tree cannot be reduced further

ExpandingReduction

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

InfiniteDefinition

When a concept is contained within the normal form of 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.

UnusedSymbol

When symbol is expected to be used by a concept but isn't.

Trait Implementations

impl Debug for ZiaError[src]

impl Display for ZiaError[src]

impl Error for ZiaError[src]

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

Auto Trait Implementations

impl Send for ZiaError

impl Sync for ZiaError

Blanket Implementations

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

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

impl<T> From<T> for T[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]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]