Sebastian McKenzie
5c0d9a0e61
Parse assignment patterns in-place in certain contexts.
...
* Parsing assignables without extra transform step when possible (speed-up).
* Added support for shorthand defaults in such certain contexts (issue #181 ).
Conflicts:
acorn.js
acorn_loose.js
2015-01-09 05:54:16 +11:00
Sebastian McKenzie
29a4dcc975
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
2015-01-04 22:03:02 +11:00
Ingvar Stepanyan
431a44bc74
Add support for destructuring defaults (not for shorthand props yet).
...
Related to #181 .
2015-01-04 12:15:24 +02:00
Sebastian McKenzie
a727a121ae
Merge https://github.com/marijnh/acorn
...
Conflicts:
acorn.js
2014-12-31 11:50:15 +11:00
Marijn Haverbeke
0b59fc198b
Require superclass expressions to be lvals
...
And remove a test that violates this.
Closes #185
2014-12-30 12:54:25 +01:00
Ingvar Stepanyan
0084ac14ae
Fixed #186 .
2014-12-30 13:42:37 +02:00
Sebastian McKenzie
ff4228c09d
Merge branch 'master' of https://github.com/marijnh/acorn
...
Conflicts:
README.md
acorn.js
package.json
2014-12-27 20:02:15 +11:00
Marijn Haverbeke
6915519498
Give TemplateElements a narrower range
...
Issue #169
2014-12-11 17:44:45 +01:00
Marijn Haverbeke
c989857aa5
Add allowImportExportEverywhere option
...
Closes #174
2014-12-11 14:48:03 +01:00
Marijn Haverbeke
2cb3dbcb41
Change token structure of template literals
...
Fix various template parsing issues, makes tokenizer useable from outside
the parser.
Closes #169
Closes #173
2014-12-11 14:20:01 +01:00
Sebastian McKenzie
53d98f1175
Make semicolon optional in do-while in >=ES6
2014-12-10 13:14:25 +01:00
Sebastian McKenzie
1b760db578
Merge branch 'master' of https://github.com/RReverser/acorn
2014-12-10 20:32:56 +11:00
Sebastian McKenzie
4d985230cc
Merge branch 'do-optional-semicolon' of https://github.com/sebmck/acorn
2014-12-10 19:07:39 +11:00
Sebastian McKenzie
841ab6802f
Make semicolon optional in do-while in >=ES6
2014-12-10 18:59:24 +11:00
Ingvar Stepanyan
96bc831306
Fix #173 .
2014-12-07 19:55:31 +02:00
Ingvar Stepanyan
33d5082043
Parse import Thing ... in the same way as import {default as Thing} ....
...
Adjusts with Reflect.parse output and simplifies handling of "default" case
in external tools by providing regular named ImportSpecifier.
2014-11-23 14:06:13 +02:00
Ingvar Stepanyan
4496ca411a
Fixed import declaration for default+batch case.
...
Also removed deprecated `kind` property.
Fixes #161 .
2014-11-19 14:05:34 +01:00
Rich Harris
f48a921e24
allow export { default } from "foo"
2014-11-12 17:42:55 +01:00
Ingvar Stepanyan
d4565fed53
Loose: ES6 import, export.
...
Removed "kind" from tests for ES6 import/export as it's
left only for backward compatibility.
2014-11-12 16:19:15 +01:00
Ingvar Stepanyan
1589a959fa
Loose: yield support.
2014-11-12 16:19:15 +01:00
Sebastian McKenzie
a18f3d1003
Add support for computed static mutator class methods
2014-11-04 11:08:36 +01:00
Marijn Haverbeke
8a799c6077
Remove redundant range info from tests
2014-10-27 10:59:16 +01:00
Ingvar Stepanyan
f26b656ea5
Remove property name clash check in ES6 as per Draft Rev 26.
...
See https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-06/jun-6.md#conclusionresolution-3 for details.
Conflicts:
test/tests-harmony.js
2014-10-27 10:56:06 +01:00
Sebastian McKenzie
f48503cd31
add unicode flag support to regex
2014-10-27 10:51:23 +01:00
Ingvar Stepanyan
fd79ac5879
Move comprehension support under ecmaVersion: 7 as per spec.
2014-10-27 10:34:53 +01:00
Max Schaefer
d525c45644
Add option for representing parenthesized expressions in the AST.
2014-10-13 12:19:39 +02:00
Max Schaefer
e9c7209f8b
Guard against missing elements in array patterns when checking function parameters.
2014-10-13 12:17:29 +02:00
Marijn Haverbeke
3603f7d0b1
Adjust start positions of parenthesized expressions to not include parentheses
...
Issue #136
2014-10-08 11:52:49 +02:00
Ingvar Stepanyan
daedc6fcb3
Fixes #129 and spaces in template quasi literals.
...
* Added hack to correctly handle skipped spaces after= template expressions.
* Added `null` default values for regular functions.
* Added regression tests for both.
2014-09-26 17:04:22 +02:00
Ingvar Stepanyan
ff9c3550a4
Allow computed class method names (as per ariya/esprima#271 ).
2014-07-29 14:41:49 +02:00
Ingvar Stepanyan
acbef8557f
Treat line ending after yield keyword as end of YieldExpression
...
(as per http://people.mozilla.org/~jorendorff/es6-draft.html#sec-generator-function-definitions-runtime-semantics-evaluation ).
2014-07-29 14:41:45 +02:00
Ingvar Stepanyan
9d552efe45
Added Generator Comprehension support.
2014-07-29 14:41:44 +02:00
Ingvar Stepanyan
afefac56bf
Added test to represent "import x, { ... } from 'module'" case.
2014-07-29 14:41:44 +02:00
Ingvar Stepanyan
3ee9e288a2
Forbid spread element in sequence expressions.
2014-07-29 14:41:32 +02:00
Ingvar Stepanyan
8f96965d36
Added yield support (completed generators).
2014-07-29 14:41:32 +02:00
Ingvar Stepanyan
b8a3300a21
Added function * support (part of generators feature).
2014-07-29 14:41:32 +02:00
Ingvar Stepanyan
4f24e13fd5
Added template string support.
2014-07-29 14:41:32 +02:00
Ingvar Stepanyan
a8cf37fc46
Test fixes for imports.
2014-07-29 14:41:32 +02:00
Ingvar Stepanyan
26818e1f36
Removed module-related tests and implemented corresponding alternatives support.
...
`module ModuleName { ... }` was removed from spec in favor of separate files.
`module LocalName from '...'` is being replaced with `import * as LocalName from '...'` as per http://jsmodules.io/ and https://twitter.com/domenic/status/492735387140243456 (c) @domenic.
2014-07-29 14:41:29 +02:00
Ingvar Stepanyan
b38c15a94b
Added export declaration support.
...
See http://people.mozilla.org/~jorendorff/es6-draft.html#sec-exports , ariya/esprima#216 , square/es6-module-transpiler#63 for latest decisions on `export default 42` vs `export default = 42` (first wins, so returning AST as it was in older Esprima Harmony and used by https://github.com/square/es6-module-transpiler/ ).
2014-07-29 14:41:24 +02:00
Ingvar Stepanyan
f2dfeff977
Added test for BindingPattern inside ArrayComprehension
...
(fails in esprima - https://code.google.com/p/esprima/issues/detail?id=570 ).
2014-07-29 14:41:18 +02:00
Ingvar Stepanyan
bcc97e2d52
Array Comprehensions as per latest ES6 drafts.
2014-07-29 14:41:18 +02:00
Ingvar Stepanyan
648f3159cc
Added for (..of..) support and guard against for (let var=.. in|of ..) loops.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
8b0be7cec9
Improved destruction assignment guards.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
0f56e32512
Object shorthand properties; small fixes to ES6 function parameters.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
50a82135c4
Recursive destructuring assignment with function arguments name clash checks.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
f7fe322490
Better parentheses check for arrow expression argument list.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
1f801001cf
ArrowExpression rest parameter support, brackets check and test fixes.
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
5d50be1447
Removed dirty hack in favor of fixed expected locations for arrow and method functions (node's location should include arguments).
2014-07-29 14:41:09 +02:00
Ingvar Stepanyan
19696af666
Added computed properties support.
2014-07-29 14:41:09 +02:00