fn peek(&mut self) -> Option<char> {
        if self.peeked.is_none() {
            self.peeked = self.iter.next();
        }
        match self.peeked {
            Some((_, ch)) => Some(ch),
            None => None,
        }
    }
/// `peek` returns but does not consume the next rune in the input.
`peek` returns but does not consume the next rune in the input.
` peek ` returns but does not consume the next rune in the input .
fn peek(&mut self) -> Option<char> {
        if self.peeked.is_none() {
            self.peeked = self.iter.next();
        }
        match self.peeked {
            Some((_, ch)) => Some(ch),
            None => None,
        }
    }
fn peek ( & mut self ) -> Option < char > { if self . peeked . is_none ( ) { self . peeked = self . iter . next ( ) ; } match self . peeked { Some ( ( _ , ch ) ) => Some ( ch ) , None => None , } }
`peek` returns but does not consume the next rune in the input.
` peek ` returns but does not consume the next rune in the input .
&mut self