pub trait WithEdge:
Sized
+ WithVertex
+ for<'a> EdgeTypes<'a, Self> {
type Kind: EdgeKind;
type Edge: 'static + GraphItem;
type OptionEdge: 'static + GraphItem + Optional<Edge<Self>> + From<Option<Edge<Self>>>;
Show 14 methods
// Required methods
fn orientation(&self, _e: Edge<Self>) -> Orientation;
fn source(&self, e: Edge<Self>) -> Vertex<Self>;
fn target(&self, e: Edge<Self>) -> Vertex<Self>;
// Provided methods
fn ends<'a, I, O>(&'a self, item: I) -> O
where 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 reverse(&self, e: Edge<Self>) -> Edge<Self>
where Self: WithEdge<Kind = Undirected> { ... }
fn get_reverse(&self, _e: Edge<Self>) -> Option<Edge<Self>> { ... }
fn edge_none() -> OptionEdge<Self> { ... }
fn edge_some(e: Edge<Self>) -> OptionEdge<Self> { ... }
fn edge_prop<P, T>(&self, value: T) -> P
where P: EdgePropMutNew<Self, T>,
T: Clone { ... }
fn edge_prop_from_fn<P, F, T>(&self, fun: F) -> P
where Self: EdgeList,
P: EdgePropMutNew<Self, T>,
F: FnMut(Edge<Self>) -> T,
T: Default + Clone { ... }
}
Required Associated Types§
type Kind: EdgeKind
type Edge: 'static + GraphItem
type OptionEdge: 'static + GraphItem + Optional<Edge<Self>> + From<Option<Edge<Self>>>
Required Methods§
fn orientation(&self, _e: Edge<Self>) -> Orientation
fn source(&self, e: Edge<Self>) -> Vertex<Self>
fn target(&self, e: Edge<Self>) -> Vertex<Self>
Provided Methods§
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> ⓘ
fn opposite(&self, u: Vertex<Self>, e: Edge<Self>) -> Vertex<Self>
fn is_incident(&self, v: Vertex<Self>, e: Edge<Self>) -> bool
fn reverse(&self, e: Edge<Self>) -> Edge<Self>where
Self: WithEdge<Kind = Undirected>,
fn get_reverse(&self, _e: Edge<Self>) -> Option<Edge<Self>>
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) -> P
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.