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

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