fn read_char(&mut self) -> Option<char> {
        let next = self.input_iter.next();
        if let Some(c) = next {
            self.current_position = self.current_position.shift(c);
        }
        next
    }
/// Consume the next character from the list.
Consume the next character from the list.
Consume the next character from the list .
fn read_char(&mut self) -> Option<char> {
        let next = self.input_iter.next();
        if let Some(c) = next {
            self.current_position = self.current_position.shift(c);
        }
        next
    }
fn read_char ( & mut self ) -> Option < char > { let next = self . input_iter . next ( ) ; if let Some ( c ) = next { self . current_position = self . current_position . shift ( c ) ; } next }
Consume the next character from the list.
Consume the next character from the list .
&mut self