pub trait SwhLabelledForwardGraph: SwhForwardGraph {
    type LabelledArcs<'arc>: IntoIterator<Item = UntypedEdgeLabel>
       where Self: 'arc;
    type LabelledSuccessors<'node>: IntoIterator<Item = (usize, Self::LabelledArcs<'node>)>
       where Self: 'node;

    // Required method
    fn labelled_successors(
        &self,
        node_id: NodeId
    ) -> Self::LabelledSuccessors<'_>;
}

Required Associated Types§

source

type LabelledArcs<'arc>: IntoIterator<Item = UntypedEdgeLabel> where Self: 'arc

source

type LabelledSuccessors<'node>: IntoIterator<Item = (usize, Self::LabelledArcs<'node>)> where Self: 'node

Required Methods§

source

fn labelled_successors(&self, node_id: NodeId) -> Self::LabelledSuccessors<'_>

Return an IntoIterator over the successors of a node.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<G: SwhLabelledBackwardGraph> SwhLabelledForwardGraph for Transposed<G>

§

type LabelledArcs<'arc> = <G as SwhLabelledBackwardGraph>::LabelledArcs<'arc> where Self: 'arc

§

type LabelledSuccessors<'succ> = <G as SwhLabelledBackwardGraph>::LabelledPredecessors<'succ> where Self: 'succ

source§

impl<G: SwhLabelledForwardGraph> SwhLabelledForwardGraph for GraphSpy<G>

§

type LabelledArcs<'arc> = <G as SwhLabelledForwardGraph>::LabelledArcs<'arc> where Self: 'arc

§

type LabelledSuccessors<'succ> = <G as SwhLabelledForwardGraph>::LabelledSuccessors<'succ> where Self: 'succ

source§

impl<G: SwhLabelledForwardGraph, NodeFilter: Fn(usize) -> bool, ArcFilter: Fn(usize, usize) -> bool> SwhLabelledForwardGraph for Subgraph<G, NodeFilter, ArcFilter>

§

type LabelledArcs<'arc> = <G as SwhLabelledForwardGraph>::LabelledArcs<'arc> where Self: 'arc

§

type LabelledSuccessors<'node> = FilteredLabelledSuccessors<'node, <Subgraph<G, NodeFilter, ArcFilter> as SwhLabelledForwardGraph>::LabelledArcs<'node>, <<G as SwhLabelledForwardGraph>::LabelledSuccessors<'node> as IntoIterator>::IntoIter, NodeFilter, ArcFilter> where Self: 'node

source§

impl<P, FG: UnderlyingGraph, BG: UnderlyingGraph> SwhLabelledForwardGraph for SwhBidirectionalGraph<P, FG, BG>where <FG as SequentialLabeling>::Label: Pair<Left = NodeId>, <<FG as SequentialLabeling>::Label as Pair>::Right: IntoIterator, <<<FG as SequentialLabeling>::Label as Pair>::Right as IntoIterator>::Item: Borrow<u64>, for<'succ> <FG as RandomAccessLabeling>::Labels<'succ>: Iterator<Item = (usize, <<FG as SequentialLabeling>::Label as Pair>::Right)>,

§

type LabelledArcs<'arc> = LabelledArcIterator<<<<<FG as RandomAccessLabeling>::Labels<'arc> as Iterator>::Item as Pair>::Right as IntoIterator>::IntoIter> where Self: 'arc

§

type LabelledSuccessors<'succ> = LabelledSuccessorIterator<<FG as RandomAccessLabeling>::Labels<'succ>> where Self: 'succ

source§

impl<P, G: UnderlyingGraph> SwhLabelledForwardGraph for SwhUnidirectionalGraph<P, G>where <G as SequentialLabeling>::Label: Pair<Left = NodeId>, <<G as SequentialLabeling>::Label as Pair>::Right: IntoIterator, <<<G as SequentialLabeling>::Label as Pair>::Right as IntoIterator>::Item: Borrow<u64>, for<'succ> <G as RandomAccessLabeling>::Labels<'succ>: Iterator<Item = (usize, <<G as SequentialLabeling>::Label as Pair>::Right)>,

§

type LabelledArcs<'arc> = LabelledArcIterator<<<<<G as RandomAccessLabeling>::Labels<'arc> as Iterator>::Item as Pair>::Right as IntoIterator>::IntoIter> where Self: 'arc

§

type LabelledSuccessors<'succ> = LabelledSuccessorIterator<<G as RandomAccessLabeling>::Labels<'succ>> where Self: 'succ

source§

impl<T: Deref> SwhLabelledForwardGraph for Twhere <T as Deref>::Target: SwhLabelledForwardGraph,

§

type LabelledArcs<'arc> = <<T as Deref>::Target as SwhLabelledForwardGraph>::LabelledArcs<'arc> where Self: 'arc

§

type LabelledSuccessors<'succ> = <<T as Deref>::Target as SwhLabelledForwardGraph>::LabelledSuccessors<'succ> where Self: 'succ