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
Ingvar Stepanyan
f6c45ac59f
Re-read only number or string after "use strict".
...
Fixes double-entering same tokContext for various parentheses.
2015-01-14 23:10:10 +02:00
Ingvar Stepanyan
d34aea63ab
Update tests.
2015-01-14 12:36:25 +02:00
Ingvar Stepanyan
e7beee177d
Remove deprecated ComprehensionBlock.of property.
...
Comprehensions were moved to ES7 anyway, so there is no sense
in keeping intermediate no-more-supported syntax.
2015-01-14 12:35:00 +02:00
Ingvar Stepanyan
7e85da74cb
shouldSkipSpace is no more needed in finishToken.
2015-01-14 12:31:59 +02:00
Ingvar Stepanyan
ad9411d2ae
Made tokenize() compliant with ES6 iterables for easier processing.
2015-01-14 12:29:20 +02:00
Marijn Haverbeke
0f55a53a7d
[loose parser] Fetch token before comment when tokenizer raises unterminated comment error
...
Closes #197
2015-01-13 22:18:55 +01:00
Forbes Lindesay
cee56dab67
Add --ecma7 option to CLI
2015-01-13 22:08:50 +01:00
Marijn Haverbeke
1b8069e48c
Restore onToken functionality for loose parser
2015-01-13 09:53:42 +01:00
Ingvar Stepanyan
d1f95ece42
Revert "Disallow parentheses in lvalue except as in computed keys or default values."
...
This reverts commit 85087f2a0951f60ca035ca6d785e4bab6d96d8f7.
Fixes #193 .
2015-01-12 20:31:38 +02:00
Ingvar Stepanyan
bc2e01aa03
Allow static as method name in class ( fixes #192 ).
...
Add uncommitted tests for #191 .
2015-01-09 15:31:01 +02:00
Ingvar Stepanyan
3d9048a692
Allow pattern in catch param ( fixes #191 ).
2015-01-09 02:50:32 +02:00
Ingvar Stepanyan
85087f2a09
Disallow parentheses in lvalue except as in computed keys or default values.
2015-01-08 23:00:22 +02:00
Ingvar Stepanyan
4d4a76588c
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 ).
2015-01-08 20:19:48 +02:00
Marijn Haverbeke
db59bd0296
Remove outdated note about loose parser not supporting ES6
2015-01-06 11:15:34 +01:00
Marijn Haverbeke
0897901f1f
Slight cleanup of '/' disambiguation
...
Issue #189
2015-01-06 11:03:50 +01:00
Marijn Haverbeke
b6b085ac8e
Make tokenizer independent of parser (with regards to '/' disambiguation)
...
Issue #189
2015-01-06 10:58:52 +01:00
Nick Fitzgerald
af0debc849
Add support for running just the tokenizer to the bin/acorn script.
2015-01-04 22:38:24 +01:00
Marijn Haverbeke
459a169262
Make tests pass again for loose parser
...
Issue #181
2015-01-04 22:34:42 +01:00
Marijn Haverbeke
7c6a8b7c76
Use parseExprSubscripts instead of parseExpression when parsing superclass
...
Issue #187
2015-01-04 22:30:50 +01:00
Marijn Haverbeke
045d8c02f5
Revert "Require superclass expressions to be lvals"
...
This reverts commit 0b59fc198baf2cd970091ee96fe5dd0f90034692.
Issue #187
2015-01-04 22:28:16 +01:00
Marijn Haverbeke
e271168cf6
Make onToken only fire for actual final tokens
...
Issue #189
2015-01-04 22:27:03 +01: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
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
Marijn Haverbeke
5512e26ac0
Note allowHashBang option in README
...
Issue #180
2014-12-18 10:19:22 +01:00
Ingvar Stepanyan
adec9f4b8e
Provide better error on member expression in binding's left side.
2014-12-17 20:37:00 +02:00
Ingvar Stepanyan
e37c07248e
Added optional support for hashbang directives.
...
Fixes #180 .
2014-12-17 19:58:38 +02:00
Marijn Haverbeke
8e84aa02f4
Bump version number post-0.11
2014-12-17 11:54:40 +01:00
Marijn Haverbeke
78e1d7ada6
Mark version 0.11.0
2014-12-17 11:54:09 +01:00
Marijn Haverbeke
97f4e9a026
[loose parser] Make unclosed objects / lists span to the start of the next node
...
That way, whitespace at their end is considered part of them,
and Tern can recognize when the cursor is inside of them.
2014-12-17 11:53:20 +01:00
Marijn Haverbeke
75b58c07d4
[loose parser] Improve autoclosing of expression lists
2014-12-15 17:32:38 +01:00
Marijn Haverbeke
6915519498
Give TemplateElements a narrower range
...
Issue #169
2014-12-11 17:44:45 +01:00
Marijn Haverbeke
c671bcfaf7
Bump version number post-0.10
2014-12-11 14:52:32 +01:00
Marijn Haverbeke
0a812b6020
Mark release 0.10.0
2014-12-11 14:51:45 +01:00
Marijn Haverbeke
c989857aa5
Add allowImportExportEverywhere option
...
Closes #174
2014-12-11 14:48:03 +01:00
Marijn Haverbeke
91e5ac0fdd
Make loose parser parse template strings
2014-12-11 14:30:24 +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
Marijn Haverbeke
e252acbe67
Upgrade jQuery used as test input
...
Closes #175
2014-12-09 15:36:50 +01:00
Ingvar Stepanyan
96bc831306
Fix #173 .
2014-12-07 19:55:31 +02:00
Marijn Haverbeke
e98176d5e9
Fix bug in update_authors.sh
2014-12-04 21:48:10 +01:00
Ingvar Stepanyan
51bc64a558
Update tests for #158
2014-11-19 20:23:38 +01:00
Ingvar Stepanyan
ba73b0e17e
Disallow parenthesis in patterns
...
Fixes #155
2014-11-19 20:23:37 +01: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
Marijn Haverbeke
98691e5b80
Properly initialize top node start position
2014-11-12 17:31:45 +01:00
Marijn Haverbeke
249e6961f8
Make tests pass for loose parser
...
Define Program node extent to be the whole program, make
both parser and the tests conform to this.
Fix a bunch of bugs in the loose parser's handling of corner
cases.
Issue #151
2014-11-12 17:05:19 +01:00
Ingvar Stepanyan
bc64d3c5f4
Add support for nested groups in log (Chrome console + browser).
2014-11-12 16:19:16 +01:00
Ingvar Stepanyan
96ccdb05fa
Web-driver support for loose parser + small fixes.
...
* Added support for acorn_loose and grouped log to web-driver.
* Removed unused copy-pasted `parseTemplate` from loose parser.
* Throw non-SyntaxError errors immediately (as those are generic).
2014-11-12 16:19:16 +01:00