[][src]Trait rs_graph::adjacencies::Adjacencies

pub trait Adjacencies<'a>: GraphType<'a> {
    type Incidence: 'a + Clone;
    fn first(&self, u: Self::Node) -> Option<Self::Incidence>;
fn next(&self, it: Self::Incidence) -> Option<Self::Incidence>;
fn get(&self, it: &Self::Incidence) -> (Self::Edge, Self::Node); fn neighs<'g>(&'g self, u: Self::Node) -> IncidenceIter<'a, 'g, Self>
    where
        Self: Sized
, { ... }
fn filter<P>(self, predicate: P) -> FilterAdjacencies<Self, P>
    where
        Self: Sized,
        P: for<'r> Fn(&'r (Self::Edge, Self::Node)) -> bool
, { ... } }

Associated Types

type Incidence: 'a + Clone

Loading content...

Required methods

fn first(&self, u: Self::Node) -> Option<Self::Incidence>

fn next(&self, it: Self::Incidence) -> Option<Self::Incidence>

fn get(&self, it: &Self::Incidence) -> (Self::Edge, Self::Node)

Loading content...

Provided methods

Important traits for IncidenceIter<'a, 'g, G>
fn neighs<'g>(&'g self, u: Self::Node) -> IncidenceIter<'a, 'g, Self> where
    Self: Sized

fn filter<P>(self, predicate: P) -> FilterAdjacencies<Self, P> where
    Self: Sized,
    P: for<'r> Fn(&'r (Self::Edge, Self::Node)) -> bool

Loading content...

Implementations on Foreign Types

impl<'a, A> Adjacencies<'a> for &'a A where
    A: Adjacencies<'a>, 
[src]

Implement Adjacencies for references.

type Incidence = A::Incidence

Loading content...

Implementors

impl<'a, 'g: 'a, G> Adjacencies<'a> for InEdges<'g, G> where
    G: Directed<'g>, 
[src]

type Incidence = G::InEdge

impl<'a, 'g: 'a, G> Adjacencies<'a> for Neighbors<'g, G> where
    G: Undirected<'g>, 
[src]

type Incidence = G::Neigh

impl<'a, 'g: 'a, G> Adjacencies<'a> for OutEdges<'g, G> where
    G: Directed<'g>, 
[src]

type Incidence = G::OutEdge

impl<'a, A, P> Adjacencies<'a> for FilterAdjacencies<A, P> where
    A: Adjacencies<'a>,
    P: 'a + Clone + for<'r> Fn(&'r (A::Edge, A::Node)) -> bool
[src]

type Incidence = Filtered<A::Incidence>

Loading content...