This way, we can keep of the order in which the rules were given, for resolving reduce/reduce conflicts.
22 lines
561 B
Text
22 lines
561 B
Text
==========================================
|
|
parses multiple statements
|
|
==========================================
|
|
var x = {};
|
|
{};
|
|
---
|
|
(program
|
|
(statement (assignment (identifier) (expression (literal (object)))))
|
|
(statement (expression (literal (object)))))
|
|
|
|
==========================================
|
|
parses if statements
|
|
==========================================
|
|
if (1) {
|
|
var x = 2;
|
|
}
|
|
---
|
|
(program
|
|
(statement (if
|
|
(expression (literal (number)))
|
|
(block (statement (assignment (identifier) (expression (literal (number)))))))))
|
|
|