Function bevy_internal::utils::petgraph::algo::isomorphism::subgraph_isomorphisms_iter
source · pub fn subgraph_isomorphisms_iter<'a, G0, G1, NM, EM>(
g0: &'a G0,
g1: &'a G1,
node_match: &'a mut NM,
edge_match: &'a mut EM
) -> Option<impl Iterator<Item = Vec<usize>> + 'a>where
G0: 'a + NodeCompactIndexable + EdgeCount + DataMap + GetAdjacencyMatrix + GraphProp + IntoEdgesDirected,
G1: 'a + NodeCompactIndexable + EdgeCount + DataMap + GetAdjacencyMatrix + GraphProp<EdgeType = <G0 as GraphProp>::EdgeType> + IntoEdgesDirected,
NM: 'a + FnMut(&<G0 as Data>::NodeWeight, &<G1 as Data>::NodeWeight) -> bool,
EM: 'a + FnMut(&<G0 as Data>::EdgeWeight, &<G1 as Data>::EdgeWeight) -> bool,
Expand description
Using the VF2 algorithm, examine both syntactic and semantic graph
isomorphism (graph structure and matching node and edge weights) and,
if g0
is isomorphic to a subgraph of g1
, return the mappings between
them.
The graphs should not be multigraphs.