[−][src]Struct libquilt::Edge
This struct represents a directed edge in a graggle graph.
Note that we don't actually store the source node, only the destination. However, the main way
of getting access to an Edge
is via the Graggle::out_edges
or Graggle::in_edges
functions, so
usually you will only encounter an Edge
if you already know what the source node is.
Note that edges are ordered, and that live edges will always come before deleted edges. This helps ensure quick access to live edges.
Fields
kind: EdgeKind
What kind of edge is it?
dest: NodeId
The destination of this (directed) edge.
patch: PatchId
Which patch introduced this edge?
If this is a pseudo-edge, then this field will be "blank", meaning that it will be set to
PatchId::cur
.
This field is necessary because of the possiblity that two different patches will add the same edge. If this happens and then one of the patches is unapplied, we'd better make sure to still have an edge present afterwards.
Trait Implementations
impl Clone for Edge
[src]
fn clone(&self) -> Edge
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Ord for Edge
[src]
fn cmp(&self, other: &Edge) -> Ordering
[src]
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
impl Eq for Edge
[src]
impl Copy for Edge
[src]
impl PartialOrd<Edge> for Edge
[src]
fn partial_cmp(&self, other: &Edge) -> Option<Ordering>
[src]
fn lt(&self, other: &Edge) -> bool
[src]
fn le(&self, other: &Edge) -> bool
[src]
fn gt(&self, other: &Edge) -> bool
[src]
fn ge(&self, other: &Edge) -> bool
[src]
impl PartialEq<Edge> for Edge
[src]
impl Debug for Edge
[src]
impl Hash for Edge
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl Edge<NodeId> for Edge
[src]
impl<'de> Deserialize<'de> for Edge
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Serialize for Edge
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<N> Edge for N where
N: Copy,
[src]
N: Copy,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> Same for T
type Output = T
Should always be Self