Advances until the next statement after failing to parse an `IF` statement.
(&mut self, if_pos: LineCol)
| 1177 | |
| 1178 | /// Advances until the next statement after failing to parse an `IF` statement. |
| 1179 | fn reset_if(&mut self, if_pos: LineCol) -> Result<()> { |
| 1180 | loop { |
| 1181 | match self.lexer.peek()?.token { |
| 1182 | Token::Eof => break, |
| 1183 | Token::End => { |
| 1184 | self.lexer.consume_peeked(); |
| 1185 | self.expect_and_consume_with_pos(Token::If, if_pos, "IF without END IF")?; |
| 1186 | break; |
| 1187 | } |
| 1188 | _ => { |
| 1189 | self.lexer.consume_peeked(); |
| 1190 | } |
| 1191 | } |
| 1192 | } |
| 1193 | self.reset() |
| 1194 | } |
| 1195 | |
| 1196 | /// Extracts the optional `STEP` part of a `FOR` statement, with a default of 1. |
| 1197 | /// |
no test coverage detected