Enum omnitigs::hydrostructure::static_hydrostructure::StaticHydrostructure[][src]

pub enum StaticHydrostructure<Graph: GraphBase, SubgraphType> {
    BridgeLike {
        r_plus: SubgraphType,
        r_minus: SubgraphType,
        azb: VecEdgeWalk<Graph>,
    },
    Avertible {
        azb: VecEdgeWalk<Graph>,
    },
}

The hydrostructure for a walk aZb.

Variants

BridgeLike

In case the walk is bridge-like, r_plus and r_minus will be proper subgraphs.

Fields of BridgeLike

r_plus: SubgraphType

The set R⁺(aZb), defined as everything reachable from the first edge of aZb without using aZb as subwalk.

r_minus: SubgraphType

The set R⁻(aZb), defined as everything backwards reachable from the last edge of aZb without using aZb as subwalk.

azb: VecEdgeWalk<Graph>

The walk the hydrostructure corresponds to.

Avertible

In case the walk is avertible, the whole graph is in the vapor, so no subgraphs need to be stored.

Fields of Avertible

azb: VecEdgeWalk<Graph>

The walk the hydrostructure corresponds to.

Implementations

impl<'a, Graph: StaticGraph> StaticHydrostructure<Graph, BitVectorSubgraph<'a, Graph>>[src]

pub fn compute_with_bitvector_subgraph(
    graph: &'a Graph,
    azb: VecEdgeWalk<Graph>
) -> Self
[src]

Compute the hydrostructure of a walk, representing R⁺(aZb) and R⁻(aZb) as BitVectorSubgraphs.

impl<'a, Graph: 'a + StaticGraph, SubgraphType: DecoratingSubgraph<ParentGraph = Graph, ParentGraphRef = &'a Graph>> StaticHydrostructure<Graph, SubgraphType>[src]

pub fn new_bridge_like(
    r_plus: SubgraphType,
    r_minus: SubgraphType,
    azb: VecEdgeWalk<Graph>
) -> Self
[src]

Initialise the hydrostructure of a bridge-like walk aZb with given sets R⁺(aZb), R⁻(aZb).

pub fn new_avertible(azb: VecEdgeWalk<Graph>) -> Self[src]

Initialise the hydrostructure of an avertible walk aZb.

pub fn compute(
    graph: SubgraphType::ParentGraphRef,
    azb: VecEdgeWalk<Graph>
) -> Self
[src]

Compute the hydrostructure of a walk.

Trait Implementations

impl<'a, Graph: 'a + GraphBase, SubgraphType: DecoratingSubgraph<ParentGraph = Graph, ParentGraphRef = &'a Graph>> Hydrostructure<<Graph as GraphBase>::NodeIndex, <Graph as GraphBase>::EdgeIndex> for StaticHydrostructure<Graph, SubgraphType>[src]

Auto Trait Implementations

impl<Graph, SubgraphType> RefUnwindSafe for StaticHydrostructure<Graph, SubgraphType> where
    SubgraphType: RefUnwindSafe,
    <Graph as GraphBase>::EdgeIndex: RefUnwindSafe

impl<Graph, SubgraphType> Send for StaticHydrostructure<Graph, SubgraphType> where
    SubgraphType: Send,
    <Graph as GraphBase>::EdgeIndex: Send

impl<Graph, SubgraphType> Sync for StaticHydrostructure<Graph, SubgraphType> where
    SubgraphType: Sync,
    <Graph as GraphBase>::EdgeIndex: Sync

impl<Graph, SubgraphType> Unpin for StaticHydrostructure<Graph, SubgraphType> where
    SubgraphType: Unpin,
    <Graph as GraphBase>::EdgeIndex: Unpin

impl<Graph, SubgraphType> UnwindSafe for StaticHydrostructure<Graph, SubgraphType> where
    SubgraphType: UnwindSafe,
    <Graph as GraphBase>::EdgeIndex: 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<T> From<T> for T[src]

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

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>,