Struct omnitigs::unitigs::NodeUnitig[][src]

pub struct NodeUnitig<Graph: GraphBase> { /* fields omitted */ }

A unitig stored as sequence of nodes.

Implementations

impl<Graph: GraphBase> NodeUnitig<Graph>[src]

pub fn new(
    walk: VecNodeWalk<Graph>,
    single_edge: Option<Graph::EdgeIndex>
) -> Self
[src]

Creates a new unitig from the given walk. Panics if the walk has length two nodes but no single edge is given, or if a single edge is given but the walk has a length other than two nodes.

pub fn single_edge(&self) -> &Option<Graph::EdgeIndex>[src]

Returns the single edge field of this unitig. The field is Some if this unitig has exactly two nodes. In this case, the two nodes might be connected by multiple edges, so then this field serves as disambiguation between the edges.

pub fn into_node_walk(self) -> VecNodeWalk<Graph>[src]

Extracts the node walk from this unitig, consuming the unitig. Note that the information for unitigs of length two with a multiedge is lost.

Trait Implementations

impl<Graph: Clone + GraphBase> Clone for NodeUnitig<Graph> where
    Graph::EdgeIndex: Clone
[src]

impl<Graph: GraphBase> Debug for NodeUnitig<Graph> where
    Graph::NodeIndex: Debug
[src]

impl<Graph: GraphBase> Eq for NodeUnitig<Graph> where
    Graph::NodeIndex: Eq,
    Graph::EdgeIndex: Eq
[src]

impl<Graph: GraphBase, IndexType> Index<IndexType> for NodeUnitig<Graph> where
    VecNodeWalk<Graph>: Index<IndexType>, 
[src]

type Output = <VecNodeWalk<Graph> as Index<IndexType>>::Output

The returned type after indexing.

impl<'a, Graph: GraphBase> NodeWalk<'a, Graph, [<Graph as GraphBase>::NodeIndex]> for NodeUnitig<Graph> where
    Graph::NodeIndex: 'a, 
[src]

impl<Graph: GraphBase> PartialEq<NodeUnitig<Graph>> for NodeUnitig<Graph> where
    Graph::NodeIndex: PartialEq,
    Graph::EdgeIndex: PartialEq
[src]

impl<'a, Graph: GraphBase> Sequence<'a, <Graph as GraphBase>::NodeIndex, [<Graph as GraphBase>::NodeIndex]> for NodeUnitig<Graph> where
    Graph::NodeIndex: 'a, 
[src]

type Iterator = Iter<'a, Graph::NodeIndex>

The iterator type of the sequence.

impl<'a, Graph: 'a + GraphBase> Sequence<'a, NodeUnitig<Graph>, [NodeUnitig<Graph>]> for NodeUnitigs<Graph> where
    Graph::NodeIndex: 'a, 
[src]

type Iterator = Iter<'a, NodeUnitig<Graph>>

The iterator type of the sequence.

Auto Trait Implementations

impl<Graph> RefUnwindSafe for NodeUnitig<Graph> where
    <Graph as GraphBase>::EdgeIndex: RefUnwindSafe,
    <Graph as GraphBase>::NodeIndex: RefUnwindSafe

impl<Graph> Send for NodeUnitig<Graph> where
    <Graph as GraphBase>::EdgeIndex: Send,
    <Graph as GraphBase>::NodeIndex: Send

impl<Graph> Sync for NodeUnitig<Graph> where
    <Graph as GraphBase>::EdgeIndex: Sync,
    <Graph as GraphBase>::NodeIndex: Sync

impl<Graph> Unpin for NodeUnitig<Graph> where
    <Graph as GraphBase>::EdgeIndex: Unpin,
    <Graph as GraphBase>::NodeIndex: Unpin

impl<Graph> UnwindSafe for NodeUnitig<Graph> where
    <Graph as GraphBase>::EdgeIndex: UnwindSafe,
    <Graph as GraphBase>::NodeIndex: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,