indexedValidFrom method
Implementation
Map<IndexedEdgeId<V>, Edge<V>> indexedValidFrom(Map<V, Vertex<V>> vertices) {
final validEdges = where((edge) =>
vertices.containsKey(edge.endpoint1) &&
vertices.containsKey(edge.endpoint2)).toList();
final edgeIndeces = <EdgeId, int>{};
return validEdges.fold({}, (a, c) {
final id = c.id;
final index = (edgeIndeces[id] ?? -1) + 1;
edgeIndeces.addAll({id: index});
final (ep1, ep2) = id;
return {...a, (ep1, ep2, index): c};
});
}