namespace MoonTools.Graph.Extensions { public static class GraphBuilder { public static DirectedGraph DirectedGraph() where TNode : System.IEquatable { return new DirectedGraph(); } public static DirectedMultiGraph DirectedMultiGraph() where TNode : System.IEquatable { return new DirectedMultiGraph(); } public static DirectedWeightedGraph DirectedWeightedGraph() where TNode : System.IEquatable { return new DirectedWeightedGraph(); } public static DirectedWeightedMultiGraph DirectedWeightedMultiGraph() where TNode : System.IEquatable { return new DirectedWeightedMultiGraph(); } public static UndirectedGraph UndirectedGraph() where TNode : System.IEquatable { return new UndirectedGraph(); } public static UndirectedWeightedGraph UndirectedWeightedGraph() where TNode : System.IEquatable { return new UndirectedWeightedGraph(); } } }