Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- migrate the parser and lexer specs to ES6
- use the pre-patched jison from the previous commit to build these as using an older jison won't fly. Hence you MUST copy the dist/ directory to node_modules/jison-gho/dist/ before running `make` or your ass is graas. - patch the code generator(s) to check if action code chunks include `let` or `const` keywords and if they do, wrap them in a {...} scope block to prevent collisions with other action code blocks in the same generated large switch/case statement. - drop ES5 usage in the build paths everywhere. This means we're not testing the validity of the BABEL output anymore. ES5 is on the way out. - **WARNING/NOTICE**: this dist/ is KNOWN-GOOD-ENOUGH for bootstrapping jison. Bootstrapping jison with ANY EARLIER BUILD WILL FAIL due to the ES6 features used in the action code blocks and the way the older versions generated lexer/parser code, which will result in load-time fatal collisions reported by `node` as multiple `let` statements will compete for supremacy. - issue 51 examples have been tweaked to compile and run a basic test run -- at least sample 1 does, while the others still fail, even when marked GOOD: to make those work we'll need the bnf.y grammar overhaul from master and then some extra work. - while this /dist/ is known-good-enough, arrow-actions in the /examples/ grammars will fail to generate a viable parser due to lingering overzealous {...} brace cleanup code that's been in jison-gho for quite a while: hence #51 is DEFINITELY NOT FIXED YET! - augmented the bnf.y grammar spec to produce a slightly less horrid and unintelligible error report for arrow-action code blocks which fail to test-compile: you'ld often get error reports about unexpected () braces, which are NOT in your action code line(s) but in the auto-generated wrapper instead -- which is required to test-compile the arrow-action code.
- Loading branch information