android/guava/src/com/google/common/graph/GraphBuilder.java
public static <N> GraphBuilder<N> from(Graph<N> graph) {
    return new GraphBuilder<N>(graph.isDirected())
        .allowsSelfLoops(graph.allowsSelfLoops())
        .nodeOrder(graph.nodeOrder());
  }
public static <N> GraphBuilder<N> from(Graph<N> graph) {
    return new GraphBuilder<N>(graph.isDirected())
        .allowsSelfLoops(graph.allowsSelfLoops())
        .nodeOrder(graph.nodeOrder());
  }
Returns a {@link GraphBuilder} initialized with all properties queryable from {@code graph}.

<p>The "queryable" properties are those that are exposed through the {@link Graph} interface,
such as {@link Graph#isDirected()}. Other properties, such as {@link #expectedNodeCount(int)},
are not set in the new builder.