petgraph::visit

Trait NodeIndexable

Source
pub trait NodeIndexable: GraphBase {
    // Required methods
    fn node_bound(&self) -> usize;
    fn to_index(&self, a: Self::NodeId) -> usize;
    fn from_index(&self, i: usize) -> Self::NodeId;
}
Expand description

The graph’s NodeIds map to indices

Required Methods§

Source

fn node_bound(&self) -> usize

Return an upper bound of the node indices in the graph (suitable for the size of a bitmap).

Source

fn to_index(&self, a: Self::NodeId) -> usize

Convert a to an integer index.

Source

fn from_index(&self, i: usize) -> Self::NodeId

Convert i to a node index. i must be a valid value in the graph.

Implementations on Foreign Types§

Source§

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

Source§

fn node_bound(&self) -> usize

Source§

fn to_index(&self, a: Self::NodeId) -> usize

Source§

fn from_index(&self, i: usize) -> Self::NodeId

Implementors§

Source§

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

Source§

impl<E, Ix: IndexType> NodeIndexable for List<E, Ix>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<N, E, Ty, S> NodeIndexable for GraphMap<N, E, Ty, S>
where N: NodeTrait, Ty: EdgeType, S: BuildHasher,

Source§

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