296 Commits

Author SHA1 Message Date
Sebastian McKenzie
043d007285 rewrite async function parsing, properly parse flow return types of arrow functions - fixes #1991 2015-07-15 20:08:10 +01:00
Sebastian McKenzie
2007469305 remove dead babylon code 2015-07-15 18:07:13 +01:00
Sebastian McKenzie
b21db8a37e finish removal of ecmaVersion option 2015-07-15 16:41:32 +01:00
Sebastian McKenzie
e9d0e55c39 sync tests with upstream acorn 2015-07-14 15:15:36 +01:00
Sebastian McKenzie
6cc59a3ce7 t 2015-07-13 16:34:43 +01:00
Sebastian McKenzie
a08c21302d Merge branch 'master' into top-secret
# Conflicts:
#	packages/babylon/src/options.js
#	src/acorn/plugins/flow.js
#	src/acorn/src/util.js
2015-07-11 21:04:33 +01:00
Sebastian McKenzie
ff6620c8ea more architectural changes 2015-07-11 20:56:26 +01:00
Sebastian McKenzie
423d8c510d Begin transition of Babel to a more scalable architecture, async flow to allow for RPC and better build system for multiple packages 2015-07-11 12:39:54 +01:00
Sebastian McKenzie
ddd173a4b3 restructure testing infrastructure to be more modular 2015-03-28 01:21:48 +11:00
Sebastian McKenzie
2cbbd86552 remove acorn compiled source 2015-03-22 04:09:18 +11:00
Sebastian McKenzie
37072737b9 add support for class decorators 2015-03-22 04:07:38 +11:00
Logan Smyth
01b39d67f0 Merge acorn 1.0.0 (formerly 'update to modular acorn' in original history). 2016-03-14 22:47:51 -07:00
Sebastian McKenzie
0d143f005f update to latest acorn, better array shortcuts, don't add code frame to error message 2016-03-14 22:40:33 -07:00
Sebastian McKenzie
7c84db45fd more estree updates - finish flow parsing 2016-03-14 22:40:16 -07:00
Sebastian McKenzie
57af08bea8 move acorn into vendor 2016-03-14 22:39:57 -07:00
Logan Smyth
16e8224ce6 Merge acorn 0.12.1 and acorn-babel (formerly "embed acorn" in the original git history). 2016-03-14 22:39:24 -07:00
Marijn Haverbeke
44c0231c09 Don't require a semicolon after 'export default [function|class] ...'
Issue #225
2015-03-20 22:40:51 +01:00
Marijn Haverbeke
013e48439f Update tools/generate-identifier-regex.js
So that it can also spit out the astral maps.
2015-03-20 17:47:46 +01:00
Marijn Haverbeke
0fee7a395e Fix the way 'npm test' loads the library 2015-03-20 17:35:51 +01:00
Ingvar Stepanyan
864268abb6 Add support for meta-properties.
estree/estree#32
2015-03-20 17:35:37 +01:00
Ingvar Stepanyan
921e45ab2b SuperExpression -> Super 2015-03-20 17:23:01 +01:00
Marijn Haverbeke
e88a5431db Allow init-less destructing bindings in for/in and for/of 2015-03-20 17:19:35 +01:00
Marijn Haverbeke
6dd254d999 Tie everything together in the new build system 2015-03-20 16:36:24 +01:00
Marijn Haverbeke
dd89c6e112 Make loose parser work with minor interface changes introduced by modularization 2015-03-20 12:04:33 +01:00
Mathias Bynens
575421b3c2 Make readRegexp more tolerant 2015-03-19 14:48:43 +01:00
Marijn Haverbeke
9673146cc1 Verify that property name can be bound to in short-hand object pattern properties
Issue #221
2015-03-19 14:05:16 +01:00
Marijn Haverbeke
a45172e044 Unify checkLVal and checkFunctionParam 2015-03-19 13:42:26 +01:00
Marijn Haverbeke
5d5b8eb3c8 Don't crash when converting missing array elements to assignable
Closes #220
2015-03-19 12:58:34 +01:00
Marijn Haverbeke
b6e8310848 Require an initalization value when let/var/const-declaring a complex pattern
Closes #222
2015-03-19 12:46:36 +01:00
Marijn Haverbeke
a75a685610 Add a startsExpr property to token types, use it to properly parse yield
Issue #219
2015-03-19 12:34:41 +01:00
Ingvar Stepanyan
0473c368e6 [es6][estree] Add support for sourceType: script|module modes.
+ Fix list of keywords and reserved words in ES6.
2015-03-18 13:42:49 +02:00
Ingvar Stepanyan
024a98431d [estree] Add SuperExpression.
(we're almost there)
2015-03-17 23:01:42 +02:00
Ingvar Stepanyan
876e774bfe [estree] Align method kinds.
[loose] Split parseObj and parseClass.
2015-03-17 22:36:34 +02:00
Sebastian McKenzie
d08d63b01d support bounded polymorphism in flow facebook/esprima#103 2015-03-13 13:22:09 +11:00
Marijn Haverbeke
16a342082a Allow trailing commas in array patterns
Closes #975
2015-03-12 22:39:00 +01:00
Marijn Haverbeke
4735ef53ef Replace the forbidReserved option with an allowReserved option
For consistency with similar options
2015-03-12 22:02:41 +01:00
Marijn Haverbeke
ba750b253b Replace strictSemicolons and allowTrailingCommas with onInsertedSemicolon and onTrailingComma 2015-03-12 22:02:41 +01:00
Marijn Haverbeke
9fb3a4f5ce Move as much as possible code in test driver out of try block 2015-03-12 22:01:33 +01:00
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