pub enum Path {
Arc(SmallVec<[Edge; 16]>),
Circ(SmallVec<[Edge; 16]>),
}Expand description
An oriented connected component of a tangle: either an arc (Arc) or a
closed loop (Circ). Path compares equal as oriented edge sequences.
Variants§
Implementations§
Source§impl Path
impl Path
pub fn arc<I>(edges: I) -> Selfwhere
I: IntoIterator<Item = Edge>,
pub fn circ<I>(edges: I) -> Selfwhere
I: IntoIterator<Item = Edge>,
pub fn is_arc(&self) -> bool
pub fn is_circle(&self) -> bool
pub fn contains(&self, e: Edge) -> bool
pub fn len(&self) -> usize
pub fn edges(&self) -> &[Edge] ⓘ
pub fn min_edge(&self) -> Edge
pub fn end_pts(&self) -> Option<(Edge, Edge)>
pub fn into_seq(self) -> SmallVec<[Edge; 16]>
Trait Implementations§
impl Eq for Path
Source§impl Ord for Path
impl Ord for Path
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Path
impl PartialOrd for Path
impl StructuralPartialEq for Path
Auto Trait Implementations§
impl Freeze for Path
impl RefUnwindSafe for Path
impl Send for Path
impl Sync for Path
impl Unpin for Path
impl UnsafeUnpin for Path
impl UnwindSafe for Path
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more