Enum chalk_engine::DelayedLiteral[][src]

pub enum DelayedLiteral<C: Context> {
    CannotProve(()),
    Negative(TableIndex),
    Positive(TableIndex, C::CanonicalConstrainedSubst),
}

Variants

Something which can never be proven nor disproven. Inserted when truncation triggers; doesn't arise normally.

We are blocked on a negative literal ~G, where G is the goal of the given table. Because negative goals must always be ground, we don't need any other information.

We are blocked on a positive literal Li; we found a conditional answer (the CanonicalConstrainedSubst) within the given table, but we have to come back later and see whether that answer turns out to be true.

Trait Implementations

impl<C: Context> PartialEq for DelayedLiteral<C>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<C: Context> Eq for DelayedLiteral<C>
[src]

impl<C: Context> Hash for DelayedLiteral<C>
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl<C: Clone + Context> Clone for DelayedLiteral<C> where
    C::CanonicalConstrainedSubst: Clone
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<C: Debug + Context> Debug for DelayedLiteral<C> where
    C::CanonicalConstrainedSubst: Debug
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<C> Send for DelayedLiteral<C> where
    <C as Context>::CanonicalConstrainedSubst: Send

impl<C> Sync for DelayedLiteral<C> where
    <C as Context>::CanonicalConstrainedSubst: Sync