pub fn next_edge_item(&mut self) -> Option<E> {
        // NB. `&& self.has_edges` might be redundant in this condition.
        let edge = if self.head_is_edge && self.has_edges {
            self.inner.next_edge()
        } else {
            None
        };
        self.head_is_edge = false;
        edge
    }
/// Advances the iterator and returns the item if it's an edge. Returns None
/// and does nothing if the first item is not an edge.
Advances the iterator and returns the item if it's an edge. Returns None
and does nothing if the first item is not an edge.
Advances the iterator and returns the item if it ' s an edge . Returns None and does nothing if the first item is not an edge .
pub fn next_edge_item(&mut self) -> Option<E> {
        // NB. `&& self.has_edges` might be redundant in this condition.
        let edge = if self.head_is_edge && self.has_edges {
            self.inner.next_edge()
        } else {
            None
        };
        self.head_is_edge = false;
        edge
    }
pub fn next_edge_item ( & mut self ) -> Option < E > { // NB. `&& self.has_edges` might be redundant in this condition. let edge = if self . head_is_edge && self . has_edges { self . inner . next_edge ( ) } else { None } ; self . head_is_edge = false ; edge }
Advances the iterator and returns the item if it's an edge.
Advances the iterator and returns the item if it ' s an edge .
&mut self