0c39f1cf86
Labels in expressions like "(a:"a")" or "(a:"a" b:"b" c:"c")" were visible to the outside despite being wrapped in parens. This commit makes them invisible, as they should be. Note this required introduction of a new "group" AST node, whose purpose is purely to provide label scope isolation. This was necessary because "label" and "sequence" nodes don't (and can't!) provide this isolation themselves. Part of a fix of #396. |
9 years ago | |
---|---|---|
.. | ||
api | 9 years ago | |
behavior | 9 years ago | |
unit | 9 years ago | |
vendor/jasmine | 11 years ago | |
.eslintrc.json | 9 years ago | |
README.md | 11 years ago | |
helpers.js | 9 years ago | |
index.html | 9 years ago |
README.md
PEG.js Spec Suite
This is the PEG.js spec suite. It ensures PEG.js works correctly. All specs should always pass on all supported platforms.
Running in Node.js
All commands in the following steps need to be executed in PEG.js root directory (one level up from this one).
-
Install all PEG.js dependencies, including development ones:
$ npm install
-
Execute the spec suite:
$ make spec
-
Watch the specs pass (or fail).
Running in the Browser
All commands in the following steps need to be executed in PEG.js root directory (one level up from this one).
-
Make sure you have Node.js and Python installed.
-
Install all PEG.js dependencies, including development ones:
$ npm install
-
Build browser version of PEG.js:
$ make browser
-
Serve PEG.js root directory using a web server:
$ python -m SimpleHTTPServer
-
Point your browser to the spec suite.
-
Watch the specs pass (or fail).