snake/doc/grammar.bnf

11 lines
242 B
BNF

DOC ::= (VAR_DECL | RULE)*
RULE ::= TARGET rarrow DEPS BLOCK
TARGET ::= LITERAL+
DEPS ::= LITERAL*
BLOCK ::= obrace CMD_LST cbrace
CMD_LST ::= (CMD (comma CMD)* comma?)?
CMD ::= LITERAL*
LITERAL ::= ident | var
VAR_DECL ::= var assign ident