Ingvar Stepanyan
34050d3917
Support for for (const ...).
...
Fixes #213 .
Also changes API to pass token type to `parseVar` to reduce string comparison ops.
2015-03-10 11:36:15 +02:00
Ingvar Stepanyan
ff60ee4fdb
[estree] Align export ... representations.
2015-03-10 10:37:00 +02:00
Ingvar Stepanyan
722bc65e79
[estree] Align Import specifiers.
2015-03-10 02:27:24 +02:00
Marijn Haverbeke
bc48c02a18
Move the parser state into an object
...
Makes almost everything in acorn.js a method of this object.
Performance is not significantly affected on a modern V8. Makes the
code reentrant and allows us to more easily expose more methods
externally in the future.
On the other hand, the proliferation of `this.` is unfortunate.
2015-03-05 15:59:12 +01:00
Marijn Haverbeke
d76ea4b3be
Make the tokenizer aware of multi-byte characters in ES6 mode
...
Add a data structure to recognize astral identifier chars. Parse whole
code points when looking for identifiers.
Issue #215
2015-03-05 15:55:38 +01:00
Marijn Haverbeke
891d5d07dd
Allow braced \u escapes in identifiers
...
We still can't properly recognize code points as ES6-style
identifier chars.
Issue #214
2015-03-04 15:37:26 +01:00
Sebastian McKenzie
12768c40d9
update to latest esprima-fb flow tests
2015-02-14 12:52:08 +11:00
Sebastian McKenzie
04c64c4592
remove this shorthand playground tests
2015-02-13 15:04:33 +11:00
Sebastian McKenzie
987694bb23
Merge branch 'multiline' of https://github.com/thetalecrafter/acorn-jsx into thetalecrafter-multiline
...
Conflicts:
acorn.js
acorn_loose.js
package.json
2015-02-13 15:03:03 +11:00
Andy VanWagoner
9f73a10f61
Allow multiline JSX string attributes.
2015-02-12 20:47:00 -07:00
Sebastian McKenzie
7ec50ebd57
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
acorn_loose.js
2015-02-08 16:09:46 +11:00
Ingvar Stepanyan
e0bcfca03f
Add JSX support to loose parser.
2015-01-27 18:25:49 +02:00
Ingvar Stepanyan
2f40d7e30e
Merge branch 'upstream' into jsx2
2015-01-27 16:27:59 +02:00
Ingvar Stepanyan
6eb177582d
Fix export default declarations.
...
Closes #184 .
2015-01-27 16:21:41 +02:00
Ingvar Stepanyan
e4a97ab877
Finalized destructuring support in loose parser; fixed startNodeAt.
2015-01-27 15:53:16 +02:00
Ingvar Stepanyan
6660a21b79
Disallow MemberExpression in bindings; clarify function namings.
2015-01-27 15:23:09 +02:00
Ingvar Stepanyan
3d5964ceed
Fix locations for AssignmentPatterns.
2015-01-27 15:10:25 +02:00
Sebastian McKenzie
1937e93e58
update flow rest param tests
2015-01-25 17:22:26 +11:00
Sebastian McKenzie
7ea883a3b5
Merge https://github.com/RReverser/acorn-jsx
...
Conflicts:
acorn.js
package.json
2015-01-25 17:08:37 +11:00
Sebastian McKenzie
c5197e1cad
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
acorn_loose.js
2015-01-25 11:50:02 +11:00
Ingvar Stepanyan
719ecbd203
Improve JSX braces context handling.
2015-01-25 00:33:03 +02:00
Ingvar Stepanyan
e93b69d595
Add regression test for #15 .
2015-01-25 00:27:06 +02:00
Ingvar Stepanyan
c445d073e2
Merge branch 'upstream' into jsx2
...
Conflicts:
acorn.js
2015-01-25 00:20:02 +02:00
Sebastian McKenzie
78215a17cd
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
package.json
2015-01-24 22:49:06 +11:00
Ingvar Stepanyan
5d96bbd781
Simplify & fix rest argument validity checks.
2015-01-24 13:38:14 +02:00
Ingvar Stepanyan
65d09eac6e
Implement shorthand property assignment in ambiguous contexts.
...
Issue #181 .
2015-01-24 12:40:24 +02:00
Ingvar Stepanyan
917de714b1
Switch from Function.{rest,defaults} to AssignmentPattern and RestElement.
...
Closes #182 .
2015-01-23 15:29:37 +02:00
Sebastian McKenzie
f031700b67
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
2015-01-23 23:16:59 +11:00
Sebastian McKenzie
cb76f3f7ba
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
2015-01-23 23:16:08 +11:00
Ingvar Stepanyan
38609ae26d
Closes #205 .
2015-01-23 14:14:02 +02:00
Ingvar Stepanyan
cb94a0851c
Add regex comparison to test driver.
2015-01-23 13:50:01 +02:00
Ingvar Stepanyan
e6f1e1027e
Fix dividing function expression.
...
Fixes #204 .
2015-01-23 13:17:03 +02:00
Sebastian McKenzie
ac4fdac04a
add flow tests
2015-01-23 21:37:26 +11:00
Sebastian McKenzie
af7630b963
Merge https://github.com/RReverser/acorn-jsx
...
Conflicts:
.gitignore
README.md
acorn.js
package.json
test/run.js
test/tests-harmony.js
test/tests-jsx.js
2015-01-23 08:07:09 +11:00
Ingvar Stepanyan
252bb46f70
Merge branch 'upstream' into jsx2
2015-01-22 16:11:28 +02:00
Ingvar Stepanyan
caa5da6ce1
Improve spread element parsing (fix allowed contexts and error locations).
2015-01-21 23:51:40 +02:00
Ingvar Stepanyan
d1f28b75aa
Merge branch 'upstream' into jsx2
2015-01-21 03:01:27 +00:00
Ingvar Stepanyan
29910d2b2d
XJS -> JSX as per facebook/esprima#83 .
2015-01-21 03:00:12 +00:00
Marijn Haverbeke
94b5efcd3e
Disallow declaration statements in block-less context
...
Closes #202
2015-01-20 12:55:21 +01:00
Sebastian McKenzie
9f7cb55264
Add stray semicolons as class elements
2015-01-20 11:56:33 +01:00
Ingvar Stepanyan
d64efe1be4
Merge branch 'upstream' into jsx2
...
Conflicts:
acorn.js
2015-01-19 14:12:24 +00:00
Sebastian McKenzie
7c3a487355
fix exponentiation tests
2015-01-18 12:13:38 +11:00
Marijn Haverbeke
dac747dfa9
Add a test for issue #201
2015-01-17 22:26:34 +01:00
Ingvar Stepanyan
6dee98d1b9
Adapt ES6 template handling to new tokenizer.
...
Avoid need for:
* extra `templates` array in favor of new `tokContext`;
* special location handling for first & last template elements;
* separate `_templateContinued` token in favor of same `_template`.
Adds:
* token types for backQuote and dollarBraceL instead of skipping them
so they can be handled (i.e. highlighted differently).
2015-01-17 22:21:22 +01:00
Sebastian McKenzie
bdb8e57283
add extra exponentiation operator test
2015-01-18 00:55:12 +11:00
Sebastian McKenzie
58f84e595f
add more exponentation operator tests
2015-01-18 00:24:48 +11:00
Justin Ridgewell
856571e948
Support Mallet operator
...
The mallet will check to see if the variable is falsey, and if
it is, override it. It's almost the same as `a = a || b`.
Re: 6to5/6to5#516
2015-01-16 18:28:25 -05:00
Sasha Koss
ff769780ea
Turn on playground for "obj ?= 2"
...
Without it fail with different issue, doesn’t connected to real case:
`Got error message: Unexpected token (1:5)`.
2015-01-16 20:09:07 +05:30
Ingvar Stepanyan
d34aea63ab
Update tests.
2015-01-14 12:36:25 +02:00
Ingvar Stepanyan
802c4cd8cb
Initial rewrite of JSX parser onto new tokenizer (all tests passing).
2015-01-14 12:18:08 +02:00