pub trait Visitable: GraphBase {
    type Map: VisitMap<Self::NodeId>;

    // Required methods
    fn visit_map(&self) -> Self::Map;
    fn reset_map(&self, map: &mut Self::Map);
}
Expand description

A graph that can create a map that tracks the visited status of its nodes.

Required Associated Types§

source

type Map: VisitMap<Self::NodeId>

The associated map type

Required Methods§

source

fn visit_map(&self) -> Self::Map

Create a new visitor map

source

fn reset_map(&self, map: &mut Self::Map)

Reset the visitor map (and resize to new size of graph if needed)

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<'a, G> Visitable for &'a G
where G: Visitable,

§

type Map = <G as Visitable>::Map

source§

fn visit_map(&self) -> <&'a G as Visitable>::Map

source§

fn reset_map(&self, map: &mut <&'a G as Visitable>::Map)

Implementors§

source§

impl<'a, G> Visitable for Frozen<'a, G>
where G: Visitable,

§

type Map = <G as Visitable>::Map

source§

impl<E, Ix> Visitable for List<E, Ix>
where Ix: IndexType,

source§

impl<G> Visitable for Reversed<G>
where G: Visitable,

§

type Map = <G as Visitable>::Map

source§

impl<G, F> Visitable for EdgeFiltered<G, F>
where G: Visitable,

§

type Map = <G as Visitable>::Map

source§

impl<G, F> Visitable for NodeFiltered<G, F>
where G: Visitable,

§

type Map = <G as Visitable>::Map

source§

impl<N, E, Ty> Visitable for GraphMap<N, E, Ty>
where N: Copy + Ord + Hash, Ty: EdgeType,

§

type Map = HashSet<N>

source§

impl<N, E, Ty, Ix> Visitable for Csr<N, E, Ty, Ix>
where Ty: EdgeType, Ix: IndexType,

source§

impl<N, E, Ty, Ix> Visitable for StableGraph<N, E, Ty, Ix>
where Ty: EdgeType, Ix: IndexType,

source§

impl<N, E, Ty, Ix> Visitable for Graph<N, E, Ty, Ix>
where Ty: EdgeType, Ix: IndexType,

source§

impl<N, E, Ty, Null, Ix> Visitable for MatrixGraph<N, E, Ty, Null, Ix>
where Ty: EdgeType, Null: Nullable<Wrapped = E>, Ix: IndexType,