fromSuccessors method

Graph<V, E> fromSuccessors(
  1. Map<V, Iterable<V>?> mapping
)

Creates a Graph from a Map of vertices pointing to an Iterable of succeeding vertices (outgoing adjacency).

Implementation

Graph<V, E> fromSuccessors(Map<V, Iterable<V>?> mapping) {
  final graph = empty();
  for (var entry in mapping.entries) {
    final successors = entry.value;
    if (successors == null || successors.isEmpty) {
      addVertex(graph, entry.key);
    } else {
      for (var successor in successors) {
        addEdge(graph, entry.key, successor);
      }
    }
  }
  return graph;
}