@@ -61,13 +61,13 @@ static public AbstractGraph cloneGraphOf(IGraph graph) {
6161 *
6262 * @return a new graph
6363 */
64- static public <T extends IGraphEngine > AbstractGraph newGraphWithEngine (final T graphEngine , final EDGE_DIRECTION direction ,
64+ static public <T extends IGraphEngine , R extends AbstractGraph > R newGraphWithEngine (final T graphEngine , final EDGE_DIRECTION direction ,
6565 final boolean selfLoops , final boolean multiEdges ) {
6666 switch (direction ) {
6767 case DIRECTED :
68- return newDirectedGraphWithEngine (graphEngine , selfLoops , multiEdges );
68+ return ( R ) newDirectedGraphWithEngine (graphEngine , selfLoops , multiEdges );
6969 case UNDIRECTED :
70- return newUndirectedGraphWithEngine (graphEngine , selfLoops , multiEdges );
70+ return ( R ) newUndirectedGraphWithEngine (graphEngine , selfLoops , multiEdges );
7171 }
7272
7373 return null ;
@@ -83,7 +83,7 @@ static public <T extends IGraphEngine> AbstractGraph newGraphWithEngine(final T
8383 *
8484 * @return a new graph
8585 */
86- static private <T extends IGraphEngine > DirectedGraph newDirectedGraphWithEngine (final T graphEngine , final boolean selfLoops ,
86+ static public <T extends IGraphEngine > DirectedGraph newDirectedGraphWithEngine (final T graphEngine , final boolean selfLoops ,
8787 final boolean multiEdges ) {
8888 return new DirectedGraph () {
8989 @ Override
@@ -113,7 +113,7 @@ public IGraphEngine graphEngineFactory() {
113113 *
114114 * @return a new graph
115115 */
116- static private <T extends IGraphEngine > UndirectedGraph newUndirectedGraphWithEngine (final T graphEngine , final boolean selfLoops ,
116+ static public <T extends IGraphEngine > UndirectedGraph newUndirectedGraphWithEngine (final T graphEngine , final boolean selfLoops ,
117117 final boolean multiEdges ) {
118118 return new UndirectedGraph () {
119119 @ Override
0 commit comments