List<Token> peek({int lookAhead = 1}) { final List<Token> res = []; for (int i = 1; i < lookAhead + 1; i++) { res.add(counter + i < tokens.length ? tokens[counter + i] : eofToken); } return res; }