You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cdeecf750f
Before this commit, the |reportLeftRecursion| pass was written in functional style, passing the |visitedRules| array around as a parameter and making a new copy each time a rule was visited. This apparently caused performance problems in some deeply recursive grammars. This commit makes it so that there is just one array which is shared across all the visitor functions via a closure and modified as rules are visited. I don't like losing the functional style (it was elegant) but performance is more important. Fixes #203. |
9 years ago | |
---|---|---|
.. | ||
compiler | 9 years ago | |
utils | 9 years ago | |
compiler.js | 9 years ago | |
grammar-error.js | 9 years ago | |
parser.js | 9 years ago | |
peg.js | 9 years ago |