[][src]Trait gf::ai::state::MultiSpaceState

pub trait MultiSpaceState<'a, A, V: Bottom>: MultiConstSpaceState<'a, A, V> {
    fn store(&mut self, elt: SpaceElt<'a, A>, value: V) -> (Option<()>, V);

    fn store_result(
        &mut self,
        span: SpaceElt<'a, A>,
        value: V
    ) -> Result<Option<()>, V> { ... } }

🟢 An abstract state of multiple address spaces with A for addresses and V for values.

Required methods

fn store(&mut self, elt: SpaceElt<'a, A>, value: V) -> (Option<()>, V)

Store to a space.

This method returns a tuple where the first element is the successful store indicator in terms of the trivial lattice {⊥, ⊤}, and the second one is the error context state.

Loading content...

Provided methods

fn store_result(
    &mut self,
    span: SpaceElt<'a, A>,
    value: V
) -> Result<Option<()>, V>

Store to the space returning a Result.

This returns Ok when the error context state is ⊥, and otherwise the error context state wrapped in Err.

Loading content...

Implementors

impl<'a, A, V, S> MultiSpaceState<'a, A, V> for SpaceStateMap<'a, A, V, S> where
    V: Bottom,
    S: SpaceState<A, V>, 
[src]

Loading content...