Skip to main content

TigAlgorithm

Trait TigAlgorithm 

Source
pub trait TigAlgorithm<Graph: GraphBase>: Default {
    type Configuration;

    // Required method
    fn compute_tigs(
        graph: &mut Graph,
        configuration: &Self::Configuration,
    ) -> Vec<VecEdgeWalk<Graph>> ;
}
Expand description

An algorithm to compute tigs for a graph.

Required Associated Types§

Source

type Configuration

The configuration of the algorithm.

Required Methods§

Source

fn compute_tigs( graph: &mut Graph, configuration: &Self::Configuration, ) -> Vec<VecEdgeWalk<Graph>>

Compute the tigs given a graph and configuration.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<'a, 'b, Graph, SequenceHandle: Default + Clone> TigAlgorithm<Graph> for MatchtigAlgorithm<'a, 'b, SequenceHandle>
where Graph: DynamicEdgeCentricBigraph + Send + Sync + GraphBase, Graph::NodeIndex: Send + Sync, Graph::EdgeData: BidirectedData + Eq + Clone + MatchtigEdgeData<SequenceHandle>,

Source§

impl<Graph, SequenceHandle: Default + Clone> TigAlgorithm<Graph> for EulertigAlgorithm<SequenceHandle>
where Graph: DynamicEdgeCentricBigraph + GraphBase, Graph::EdgeData: BidirectedData + Eq + Clone + MatchtigEdgeData<SequenceHandle>,

Source§

impl<Graph, SequenceHandle: Default + Clone> TigAlgorithm<Graph> for GreedytigAlgorithm<SequenceHandle>
where Graph: DynamicEdgeCentricBigraph + Send + Sync + GraphBase, Graph::NodeIndex: Send + Sync, Graph::EdgeData: BidirectedData + Eq + Clone + MatchtigEdgeData<SequenceHandle>,

Source§

impl<Graph> TigAlgorithm<Graph> for PathtigAlgorithm