Struct fera_graph::graphs::adjset::AdjSet
source · pub struct AdjSet<V: AdjSetVertex, K: AdjSetEdgeKind<V>> { /* private fields */ }
Implementations
sourceimpl<V, K> AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
Trait Implementations
sourceimpl<V, K> Adjacency for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> Adjacency for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
fn out_neighbors(&self, v: Vertex<Self>) -> OutNeighborIter<'_, Self>
fn out_degree(&self, v: Vertex<Self>) -> usize
sourceimpl<V, K> Default for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> Default for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
sourceimpl<V, K> EdgeList for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> EdgeList for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
fn edges(&self) -> EdgeIter<'_, Self>
fn num_edges(&self) -> usize
fn get_edge_by_ends(&self, u: Vertex<Self>, v: Vertex<Self>) -> Option<Edge<Self>>
fn edges_ends(&self) -> EdgesEnds<'_, Self, EdgeIter<'_, Self>> ⓘ
fn edges_with_ends(&self) -> EdgesWithEnds<'_, Self, EdgeIter<'_, Self>> ⓘ
fn edge_by_ends(&self, u: Vertex<Self>, v: Vertex<Self>) -> Edge<Self>
sourceimpl<'a, V, K> EdgeTypes<'a, AdjSet<V, K>> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<'a, V, K> EdgeTypes<'a, AdjSet<V, K>> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
type EdgeIter = Edges<'a, V, K>
type OutEdgeIter = OutEdges<'a, V, K>
sourceimpl<V, K> Incidence for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> Incidence for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
fn out_edges(&self, v: Vertex<Self>) -> OutEdgeIter<'_, Self>
fn out_edges_ends(
&self,
v: Vertex<Self>
) -> EdgesEnds<'_, Self, OutEdgeIter<'_, Self>> ⓘ
fn out_edges_with_ends(
&self,
v: Vertex<Self>
) -> EdgesWithEnds<'_, Self, OutEdgeIter<'_, Self>> ⓘ
sourceimpl<V, K> VertexList for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> VertexList for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
fn vertices(&self) -> VertexIter<'_, Self>
fn num_vertices(&self) -> usize
sourceimpl<'a, V, K> VertexTypes<'a, AdjSet<V, K>> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<'a, V, K> VertexTypes<'a, AdjSet<V, K>> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
type VertexIter = Cloned<Keys<'a, V, HashSet<V, RandomState>>>
type OutNeighborIter = Cloned<Iter<'a, V>>
sourceimpl<V, K> WithEdge for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> WithEdge for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
type Kind = K
type Edge = <K as AdjSetEdgeKind<V>>::Edge
type OptionEdge = Option<<K as AdjSetEdgeKind<V>>::Edge>
fn source(&self, e: Edge<Self>) -> Vertex<Self>
fn target(&self, e: Edge<Self>) -> Vertex<Self>
fn orientation(&self, _e: Edge<Self>) -> Orientation
fn get_reverse(&self, e: Edge<Self>) -> Option<Edge<Self>>
fn ends<'a, I, O>(&'a self, item: I) -> Owhere
I: Ends<'a, Self, O>,
fn end_vertices(&self, e: Edge<Self>) -> (Vertex<Self>, Vertex<Self>)
fn with_ends<I>(&self, iter: I) -> EdgesWithEnds<'_, Self, I::IntoIter> ⓘwhere
I: IntoIterator,
I::Item: IntoOwned<Edge<Self>>,
fn opposite(&self, u: Vertex<Self>, e: Edge<Self>) -> Vertex<Self>
fn is_incident(&self, v: Vertex<Self>, e: Edge<Self>) -> bool
fn edge_none() -> OptionEdge<Self>
fn edge_some(e: Edge<Self>) -> OptionEdge<Self>
fn edge_prop<P, T>(&self, value: T) -> Pwhere
P: EdgePropMutNew<Self, T>,
T: Clone,
fn edge_prop_from_fn<P, F, T>(&self, fun: F) -> Pwhere
Self: EdgeList,
P: EdgePropMutNew<Self, T>,
F: FnMut(Edge<Self>) -> T,
T: Default + Clone,
sourceimpl<V, K, T> WithEdgeProp<T> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
T: Clone,
impl<V, K, T> WithEdgeProp<T> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
T: Clone,
type EdgeProp = HashMapProp<<K as AdjSetEdgeKind<V>>::Edge, T, RandomState>
sourcefn default_edge_prop(&self, value: T) -> DefaultEdgePropMut<Self, T>where
T: Clone,
fn default_edge_prop(&self, value: T) -> DefaultEdgePropMut<Self, T>where
T: Clone,
Creates a new default edge property where the initial value associated with each edge is
value
. Read moresourceimpl<V, K> WithVertex for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
impl<V, K> WithVertex for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
type Vertex = V
type OptionVertex = Option<V>
fn vertex_none() -> OptionVertex<Self>
fn vertex_some(v: Vertex<Self>) -> OptionVertex<Self>
fn vertex_prop<P, T>(&self, value: T) -> Pwhere
P: VertexPropMutNew<Self, T>,
T: Clone,
fn vertex_prop_from_fn<P, T, F>(&self, fun: F) -> Pwhere
Self: VertexList,
P: VertexPropMutNew<Self, T>,
F: FnMut(Vertex<Self>) -> T,
T: Default + Clone,
sourceimpl<V, K, T> WithVertexProp<T> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
T: Clone,
impl<V, K, T> WithVertexProp<T> for AdjSet<V, K>where
V: AdjSetVertex,
K: AdjSetEdgeKind<V>,
T: Clone,
type VertexProp = HashMapProp<V, T, RandomState>
type VertexProp = HashMapProp<V, T, RandomState>
The vertex property type.
sourcefn default_vertex_prop(&self, value: T) -> DefaultVertexPropMut<Self, T>where
T: Clone,
fn default_vertex_prop(&self, value: T) -> DefaultVertexPropMut<Self, T>where
T: Clone,
Creates a new default vertex property where the initial value associated with each vertex
is
value
. Read moreAuto Trait Implementations
impl<V, K> RefUnwindSafe for AdjSet<V, K>where
K: RefUnwindSafe,
V: RefUnwindSafe,
impl<V, K> Send for AdjSet<V, K>where
K: Send,
V: Send,
impl<V, K> Sync for AdjSet<V, K>where
K: Sync,
V: Sync,
impl<V, K> Unpin for AdjSet<V, K>where
K: Unpin,
V: Unpin,
impl<V, K> UnwindSafe for AdjSet<V, K>where
K: UnwindSafe,
V: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more