[][src]Struct peepmatic_runtime::linear::Increment

pub struct Increment {
    pub operation: MatchOp,
    pub expected: MatchResult,
    pub actions: Vec<Action>,
}

A partial match of an optimization's LHS and partial construction of its RHS.

An increment is a matching operation, the expected result from that operation to continue to the next increment, and the actions to take to build up the LHS scope and RHS instructions given that we got the expected result from this increment's matching operation. Each increment will basically become a state and a transition edge out of that state in the final automata.

Fields

operation: MatchOp

The matching operation to perform.

expected: MatchResult

The expected result of our matching operation, that enables us to continue to the next increment, or Else for "don't care" wildcard-style matching.

actions: Vec<Action>

Actions to perform, given that the operation resulted in the expected value.

Trait Implementations

impl Clone for Increment[src]

impl Debug for Increment[src]

impl Eq for Increment[src]

impl PartialEq<Increment> for Increment[src]

impl StructuralEq for Increment[src]

impl StructuralPartialEq for Increment[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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.