MCPcopy Index your code
hub / github.com/endbasic/endbasic / reset_if

Method reset_if

core/src/parser.rs:1179–1194  ·  view source on GitHub ↗

Advances until the next statement after failing to parse an `IF` statement.

(&mut self, if_pos: LineCol)

Source from the content-addressed store, hash-verified

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 ///

Callers 1

parse_oneMethod · 0.80

Calls 4

consume_peekedMethod · 0.80
peekMethod · 0.45
resetMethod · 0.45

Tested by

no test coverage detected