(
tokens: &[Token],
pos: &mut usize,
expected: &Token,
)
| 19 | } |
| 20 | |
| 21 | pub(super) fn expect_token( |
| 22 | tokens: &[Token], |
| 23 | pos: &mut usize, |
| 24 | expected: &Token, |
| 25 | ) -> Result<(), ProceduralError> { |
| 26 | if *pos < tokens.len() && token_matches(&tokens[*pos], expected) { |
| 27 | *pos += 1; |
| 28 | Ok(()) |
| 29 | } else { |
| 30 | Err(ProceduralError::parse(format!( |
| 31 | "expected {expected:?} at position {pos}, got {:?}", |
| 32 | tokens.get(*pos) |
| 33 | ))) |
| 34 | } |
| 35 | } |
| 36 | |
| 37 | pub(super) fn expect_ident(tokens: &[Token], pos: &mut usize) -> Result<String, ProceduralError> { |
| 38 | match tokens.get(*pos) { |
no test coverage detected