Allow nested loopBlocks

- loopBlocks now contain statements i.o. instructions
This commit is contained in:
2021-12-26 19:23:37 +01:00
committed by Raymon Zutekouw
parent 531d569d48
commit 859f1df4b8
+12 -10
View File
@@ -1,15 +1,17 @@
operator = @{ "operator" } // TODO operator = @{ "operator" } // TODO
operand = @{ "operand" } // TODO operand = @{ "operand" } // TODO
instruction = { operator ~ (" "+ ~ operand)*} instruction = { operator ~ (" "+ ~ operand)* }
loopBlockStart = { "[" } loopBlockStart = { "[" }
loopBlockEnd = { "]" } loopBlockEnd = { "]" }
loopBlock = { loopBlockStart loopBlock = { loopBlockStart
~ instruction* ~ statements
~ loopBlockEnd ~ loopBlockEnd
} }
statement = _{ instruction | loopBlock }
statements = _{ statement* }
statement = _{ instruction | loopBlock }
file = {SOI ~ (statement ~ ("\n" | "\r\n")+)* ~ EOI} file = {SOI ~ (statement ~ ("\n" | "\r\n")+)* ~ EOI}