namespace MoonTools.Graph.Extensions { public static class WeightedExtensions { public static void AddEdge(this TGraph g, TNode v, TNode u, int weight) where TGraph : Graph, IWeightedGraph where TNode : System.IEquatable { g.AddEdge(v, u, weight, default(Unit)); } public static void AddEdges(this TGraph g, params (TNode, TNode, int)[] edges) where TGraph : Graph, IWeightedGraph where TNode : System.IEquatable { foreach (var (v, u, weight) in edges) { g.AddEdge(v, u, weight, default(Unit)); } } } }