Replies: 2 comments 2 replies
-
I believe this isn't correct, but not in the way you assume. Even with a To explain this behavior a bit more in-depth would require some knowledge about how LL(k) parsers work. In short: On another note, I believe you're allowed to have if (!this.IS_RECORDING) {
while (...) {
this.SKIP_TOKEN();
}
} |
Beta Was this translation helpful? Give feedback.
-
FYI: There is a built wrapper for |
Beta Was this translation helpful? Give feedback.
-
I was getting a "Maximum call stack exceeded" error by putting a
SKIP_TOKEN
in aMANY
with aGATE
(the latter evaded the infinite loop detection). I think this is becauseSKIP_TOKEN
is not aTerminal
unlikeCONSUME
. Is this correct behavior? Both are consuming a token internally, the latter just checks whether it matches the expected type or not (and the return values are different, but that's I think mainly forEmbeddedActionsParser
).Beta Was this translation helpful? Give feedback.
All reactions