Trait flow_arena::FlowShift[][src]

pub trait FlowShift: FlowBase + FlowDevote {
    fn shuttle(
        &self,
        obj: &Self::Id,
        dir: Direction
    ) -> Result<Self::Id, FlowError> { ... }
fn shuttle_iter(
        &self,
        obj: &Self::Id,
        dir: Direction
    ) -> Result<Self::Id, FlowError> { ... }
fn migrate(
        &mut self,
        obj: &Self::Id,
        dir: Direction
    ) -> Result<(), FlowError> { ... }
fn migrate_iter(
        &mut self,
        obj: &Self::Id,
        dir: Direction
    ) -> Result<(), FlowError> { ... } }

provides ability to move around in flow

Provided methods

fn shuttle(&self, obj: &Self::Id, dir: Direction) -> Result<Self::Id, FlowError>[src]

returns the obj in the corresponding relative position

fn shuttle_iter(
    &self,
    obj: &Self::Id,
    dir: Direction
) -> Result<Self::Id, FlowError>
[src]

iteratively shuttles within the flow

fn migrate(&mut self, obj: &Self::Id, dir: Direction) -> Result<(), FlowError>[src]

alters the node position by the corresponding relative position, within a single node

fn migrate_iter(
    &mut self,
    obj: &Self::Id,
    dir: Direction
) -> Result<(), FlowError>
[src]

alters the node position by the corresponding relative position, iteratively within the flow

Loading content...

Implementors

impl<Id, FlowNode> FlowShift for FlowArena<Id, FlowNode> where
    Id: Clone + Hash + Eq + Default + Debug,
    FlowNode: Node<Id> + Default + Debug + Clone
[src]

Loading content...