[][src]Struct adapton::reflect::Succ

pub struct Succ {
    pub dirty: bool,
    pub loc: Loc,
    pub effect: Effect,
    pub value: Val,
    pub is_dup: bool,

Reflected version of engine::Succ. Unlike the real engine's Succ type, this version stores a reflected value (of type Val).


dirty: bool

Dirty invariant: If this edge is dirty, then all predecessors of the edge are dirty too.

loc: Loc

The target of the outgoing Effect

effect: Effect

The effect: either producing or consuming articulated content

value: Val

The value either produced or consumed by this Effect

is_dup: bool

Duplicate edge invariant: If this edge is a duplicate according to this flag, then it is preceded by an edge with the same effect effect, targeting the same location loc. Furthermore, because of the (precise naming) semantics of Adapton and its programs, the observed value value and dirty statuses are always the same across duplicated edges. Hence, the engine does not store these duplicate edges: They are completely redundant.

Trait Implementations

impl Clone for Succ[src]

impl Debug for Succ[src]

impl Eq for Succ[src]

impl Hash for Succ[src]

impl PartialEq<Succ> for Succ[src]

impl Reflect<Succ> for Succ[src]

impl StructuralEq for Succ[src]

impl StructuralPartialEq for Succ[src]

Auto Trait Implementations

impl !RefUnwindSafe for Succ

impl !Send for Succ

impl !Sync for Succ

impl Unpin for Succ

impl !UnwindSafe for Succ

Blanket Implementations

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

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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

The type returned in the event of a conversion error.