pub fn remove_edge(&mut self, index1: usize, index2: usize) -> Result<(),GraphErrors> {
        let (r1, r2) = self.get_2_mut(index1, index2);
        unsafe{ r1.remove(r2)?; }
        self.edge_count -= 1;
        Ok(())
    }
/// Removes edge between nodes *index1* and *index2*
/// ## ErrorCases:
/// | Error | Reason |
/// | ---- | ---- |
/// | `GraphErrors::IndexOutOfRange` | `index1` or `index2` larger than `self.vertex_count()`  |
/// | `GraphErrors::EdgeDoesNotExist` | requested edge does not exists |
/// # panics
/// * if index out of bounds
/// * in debug: If `index0 == index1`
Removes edge between nodes *index1* and *index2
Removes edge between nodes * index1 * and * index2
pub fn remove_edge(&mut self, index1: usize, index2: usize) -> Result<(),GraphErrors> {
        let (r1, r2) = self.get_2_mut(index1, index2);
        unsafe{ r1.remove(r2)?; }
        self.edge_count -= 1;
        Ok(())
    }
pub fn remove_edge ( & mut self , index1 : usize , index2 : usize ) -> Result < ( ) , GraphErrors > { let ( r1 , r2 ) = self . get_2_mut ( index1 , index2 ) ; unsafe { r1 . remove ( r2 ) ? ; } self . edge_count -= 1 ; Ok ( ( ) ) }
Removes edge between nodes *index1* and *index2
Removes edge between nodes * index1 * and * index2
&mut self
index1
usize
index2
usize
&mut self
index1
usize
index2
usize
errorcases:
| Error | Reason |
| ---- | ---- |
| `GraphErrors::IndexOutOfRange` | `index1` or `index2` larger than `self.vertex_count()`  |
| `GraphErrors::EdgeDoesNotExist` | requested edge does not exists |
| Error | Reason | | ---- | ---- | | ` GraphErrors :: IndexOutOfRange ` | ` index1 ` or ` index2 ` larger than ` self . vertex_count () ` | | ` GraphErrors :: EdgeDoesNotExist ` | requested edge does not exists |
panics
if index out of bounds
in debug: If `index0 == index1`
if index out of bounds in debug : If ` index0 == index1 `