Introduces the private graph[K, T] struct to partially implement the Graph[K, T] interface. Only select functions are in their respective directed or undirected implementation files. This reduces most of the duplication that was present in both files.
Although this is a moderate change in size, most of the existing PRs are still relevant because they mostly use the Graph interface - IMHO, this is a sign of good design.
Introduces the private graph[K, T] struct to partially implement the Graph[K, T] interface. Only select functions are in their respective directed or undirected implementation files. This reduces most of the duplication that was present in both files.
Although this is a moderate change in size, most of the existing PRs are still relevant because they mostly use the Graph interface - IMHO, this is a sign of good design.