pub fn remove_edge(&mut self, e: EdgeIndex) -> Option<E> {
        // every edge is part of two lists,
        // outgoing and incoming edges.
        // Remove it from both
        let (edge_node, edge_next) = match self.edges.get(e.index()) {
            None => return None,
            Some(x) => (x.node, x.next),
        };
        // Remove the edge from its in and out lists by replacing it with
        // a link to the next in the list.
        self.change_edge_links(edge_node, e, edge_next);
        self.remove_edge_adjust_indices(e)
    }
/// Remove an edge and return its edge weight, or `None` if it didn't exist.
///
/// Apart from `e`, this invalidates the last edge index in the graph
/// (that edge will adopt the removed edge index).
///
/// Computes in **O(e')** time, where **e'** is the size of four particular edge lists, for
/// the vertices of `e` and the vertices of another affected edge.
Remove an edge and return its edge weight, or `None` if it didn't exist.
Apart from `e`, this invalidates the last edge index in the graph
(that edge will adopt the removed edge index).


Remove an edge and return its edge weight or ` None ` if it didn ' t exist . Apart from ` e ` this invalidates the last edge index in the graph ( that edge will adopt the removed edge index ) .
pub fn remove_edge(&mut self, e: EdgeIndex) -> Option<E> {
        // every edge is part of two lists,
        // outgoing and incoming edges.
        // Remove it from both
        let (edge_node, edge_next) = match self.edges.get(e.index()) {
            None => return None,
            Some(x) => (x.node, x.next),
        };
        // Remove the edge from its in and out lists by replacing it with
        // a link to the next in the list.
        self.change_edge_links(edge_node, e, edge_next);
        self.remove_edge_adjust_indices(e)
    }
pub fn remove_edge ( & mut self , e : EdgeIndex ) -> Option < E > { // every edge is part of two lists, // outgoing and incoming edges. // Remove it from both let ( edge_node , edge_next ) = match self . edges . get ( e . index ( ) ) { None => return None , Some ( x ) => ( x . node , x . next ) , } ; // Remove the edge from its in and out lists by replacing it with // a link to the next in the list. self . change_edge_links ( edge_node , e , edge_next ) ; self . remove_edge_adjust_indices ( e ) }
Remove an edge and return its edge weight, or `None` if it didn't exist.
Remove an edge and return its edge weight or ` None ` if it didn ' t exist .
&mut self
e
EdgeIndex