pub fn parse(&mut self) -> Result<(), ParseError> {
        loop {
            match self.lines.next() {
                Some(line) => {
                    self.characters = IntoIterator::into_iter(line.chars()).peekable();

                    if let Err(message) = self.parse_root_level() {
                        return Err(ParseError::new(message, self));
                    }
                }
                None => {
                    return Ok(());
                }
            };
            self.row += 1;
            self.column = 0;
        }
    }
/// Run the lexer by parsing the characters into tokens. Things like labels
/// will be computed later.
Run the lexer by parsing the characters into tokens. Things like labels
will be computed later.
Run the lexer by parsing the characters into tokens . Things like labels will be computed later .
pub fn parse(&mut self) -> Result<(), ParseError> {
        loop {
            match self.lines.next() {
                Some(line) => {
                    self.characters = IntoIterator::into_iter(line.chars()).peekable();
                    if let Err(message) = self.parse_root_level() {
                        return Err(ParseError::new(message, self));
                    }
                }
                None => {
                    return Ok(());
                }
            };
            self.row += 1;
            self.column = 0;
        }
    }
pub fn parse ( & mut self ) -> Result < ( ) , ParseError > { loop { match self . lines . next ( ) { Some ( line ) => { self . characters = IntoIterator :: into_iter ( line . chars ( ) ) . peekable ( ) ; if let Err ( message ) = self . parse_root_level ( ) { return Err ( ParseError :: new ( message , self ) ) ; } } None => { return Ok ( ( ) ) ; } } ; self . row += 1 ; self . column = 0 ; } }
Run the lexer by parsing the characters into tokens.
Run the lexer by parsing the characters into tokens .
&mut self
&mut self