Type Definition traitgraph::walks::VecEdgeWalk [−][src]
Expand description
An edge walk that is represented as a vector of edge indices.
Trait Implementations
fn compute_trivial_heart(&'a self, graph: &Graph) -> Option<(usize, usize)> where
Graph: StaticGraph,
fn compute_trivial_heart(&'a self, graph: &Graph) -> Option<(usize, usize)> where
Graph: StaticGraph,
Computes the trivial heart of the walk, or returns None
if the walk is non-trivial.
The heart is returned as the index of the last split arc and the index of the first join arc of the walk. Read more
fn compute_trivial_heart_edge_len(&'a self, graph: &Graph) -> Option<usize> where
Graph: StaticGraph,
fn compute_trivial_heart_edge_len(&'a self, graph: &Graph) -> Option<usize> where
Graph: StaticGraph,
Compute the amount of edges in the trivial heart, or returns None
if the walk is non-trivial.
Recall that a heart is a walk from arc to arc. Read more
Returns true if this walk is non-trivial.
fn compute_univocal_extension<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> ResultWalk where
Graph: StaticGraph,
fn compute_univocal_extension<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> ResultWalk where
Graph: StaticGraph,
Compute the univocal extension of a walk. That is the concatenation LWR, where W is the walk, L the longest R-univocal walk to the first edge of W and R the longest univocal walk from the last edge of W. Read more
fn compute_univocal_extension_non_scc<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> ResultWalk where
Graph: StaticGraph,
fn compute_univocal_extension_non_scc<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> ResultWalk where
Graph: StaticGraph,
Compute the univocal extension of a walk. That is the concatenation LWR, where W is the walk, L the longest R-univocal walk to the first edge of W and R the longest univocal walk from the last edge of W. This variant handles not strongly connected graphs by forbidding L and R to repeat edges. Read more
fn compute_univocal_extension_with_original_offset<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> (usize, ResultWalk) where
Graph: StaticGraph,
fn compute_univocal_extension_with_original_offset<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> (usize, ResultWalk) where
Graph: StaticGraph,
Compute the univocal extension of a walk. That is the concatenation LWR, where W is the walk, L the longest R-univocal walk to the first edge of W and R the longest univocal walk from the last edge of W. Read more
fn compute_univocal_extension_with_original_offset_non_scc<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> (usize, ResultWalk) where
Graph: StaticGraph,
fn compute_univocal_extension_with_original_offset_non_scc<ResultWalk: From<Vec<Graph::EdgeIndex>>>(
&'a self,
graph: &Graph
) -> (usize, ResultWalk) where
Graph: StaticGraph,
Compute the univocal extension of a walk. That is the concatenation LWR, where W is the walk, L the longest R-univocal walk to the first edge of W and R the longest univocal walk from the last edge of W. This variant handles not strongly connected graphs by forbidding L and R to repeat edges. Read more
fn clone_as_node_walk<ResultWalk: From<Vec<Graph::NodeIndex>>>(
&'a self,
graph: &Graph
) -> Option<ResultWalk> where
Graph: StaticGraph,
fn clone_as_node_walk<ResultWalk: From<Vec<Graph::NodeIndex>>>(
&'a self,
graph: &Graph
) -> Option<ResultWalk> where
Graph: StaticGraph,
Returns the node walk represented by this edge walk. If this walk contains no edge, then None is returned. If there is a consecutive pair of edges not connected by a node, then this method panics. Read more
Returns true if this is a proper subwalk of the given walk. Proper means that the walks are not equal. Read more
Returns true if this is a valid circular walk in the given graph.