Andy
2c1193b7da
Move plugin helpers out of Parser.prototype and into the plugin itself ( #482 )
2017-04-24 00:34:35 +02:00
Andy
8601f2f7da
Add type declarations for AST nodes ( #480 )
2017-04-21 19:48:09 +02:00
Brian Ng
bc0719a145
Ensure non pattern shorthand props are checked for reserved words ( #479 )
2017-04-21 16:25:34 +02:00
Alex Kuzmenko
00d6db9fbb
Fixed invalid number literal parsing ( #473 )
...
* Fixed invalid number literal parsing
* Don't ignore period or E characters after octal numbers
cherry-pick fix from acorn
* Fix tests
2017-04-21 15:22:50 +02:00
Daniel Tschinder
d1a5220b89
Add support for declare export + fixes ( #224 )
...
* Add support for declare export
* Do not allow declare module inside declare module
* Reallow module exports outside module
* Add handling of `declare export default`
Add check for multiple module.export declarations
* Disallow export let/const/type
Refactor parsing object properties to share more code and add support
for getters and setters
* Rename tests
* Update test fixtures
* Optimize for performance
* disallow declare export interface outside of module
* Refactor code to be more readable and less lookahead
* Add comments
* Add test for export star as
* Test for number literal getter/setter
* Add more tests
* Fix tests
* Allow union types and correctly eat semi after type
* Use non computed keys
* Fix tests
2017-04-21 14:41:59 +02:00
Andy
5e156310ca
Type-check tokenizer/index.js ( #460 )
...
* Type-check tokenizer/index.js
* Update test baselines
2017-04-21 14:25:31 +02:00
Andy
ad284d5c36
Convert each plugin to a function from a class to an overriding class ( #459 )
...
* Convert each plugin to a function from a class to an overriding class
* Handle undefined options
* Fix indentation
* Fix double space
2017-04-21 13:53:51 +02:00
Brian Ng
2ef436641e
Ensure locations in ObjectTypeAnnotations do not include semi or comma ( #472 )
2017-04-19 14:08:51 +02:00
Brian Ng
17f2a2036c
Allow namespace exotic to be exported as default ( #474 )
2017-04-19 13:59:49 +02:00
Sven SAULEAU
b2fdd944fe
feat: add tests
2017-04-17 13:33:00 +02:00
Sven SAULEAU
0927e24ac6
Merge remote-tracking branch 'kristofdegrave/nullPropagation' into feat-optional-chaining
2017-04-17 13:21:35 +02:00
Sven SAULEAU
7b51979152
feat: add optional MemberExpression
2017-04-15 18:19:43 +02:00
Brian Ng
637119a017
Fix typo in flow spread operator error [skip ci]
2017-04-10 10:48:51 -05:00
Brian Ng
bdfa92464b
Fix predicate attachment to match flow parser ( #428 )
2017-04-04 15:48:50 +02:00
Alex Rattray
cbf4203237
Add extra.raw back to JSXText and JSXAttribute ( #344 )
2017-04-04 15:47:59 +02:00
Brian Ng
14b7f50e51
Fix rest parameters with array and objects ( #424 )
...
* Fix rest parameters with array and objects
* Add test for array rest with object
* reuse parseBindingIdentifier
2017-04-03 22:27:43 +02:00
Alex Kuzmenko
22741a8068
Fix number parser ( #433 )
...
Fixed number parser #2
Added one more test
2017-04-03 22:25:29 +02:00
Conrad Buck
213fdab063
Add support for flow type spread ( #418 )
...
* Add support for flow type spread
* Broaden spreadable types from primary to all, more tests
* Eliminate variance sigil for type spreads, better errors, fix tests
2017-04-03 22:05:05 +02:00
Brian Ng
a495d7f65d
Allow statics in flow interfaces ( #427 )
2017-03-23 22:10:07 +01:00
Henry Zhu
9f7d9080cf
remove babylon plugin for template revision since it's stage-4 ( #426 )
2017-03-22 14:05:56 -04:00
Daniel Tschinder
32eabf620b
Fix push-pop logic in flow ( #405 )
2017-03-22 10:25:10 +01:00
Arshabh Kumar Agarwal
964105e3fb
Improves error message when super is called outside of constructor ( #408 )
2017-03-21 17:44:21 -04:00
Kevin Gibbons
2e467ef3bc
Add support for invalid escapes in tagged templates ( #274 )
...
Per the stage-3 TC39 proposal:
https://github.com/tc39/proposal-template-literal-revision
2017-03-21 16:55:54 -04:00
Daniel Tschinder
68e8550e84
Merge branch 'master' into 7.0
...
* master:
Upgrade flow to 0.41
Throw error if new.target is used outside of a function (#402 )
Fix watch command (#403 )
Update yarn lock
Fix parsing of class properties (#351 )
# Conflicts:
# src/parser/statement.js
# test/fixtures/experimental/class-constructor-call/illegal-key/options.json
2017-03-10 13:47:45 +01:00
Brian Ng
ca652bd934
Throw error if new.target is used outside of a function ( #402 )
2017-03-10 13:38:45 +01:00
Kevin Gibbons
81056eeee7
Fix parsing of class properties ( #351 )
2017-03-10 12:43:45 +01:00
Brian Ng
7a6d495704
Throw error if new.target is used outside of a function ( #402 )
2017-03-08 16:34:22 +01:00
Brian Ng
c8c71684c4
Don't consume async when checking for async func decl ( #377 )
2017-03-01 12:11:48 -05:00
Henry Zhu
f1e2cca767
Add back ranges property ( #363 )
...
* Add back ranges property
* Correctly adjust range in flow plugin
* Make it an option
2017-03-01 10:57:06 -05:00
Andrew Levine
aec4beff0c
Don't parse class properties without initializers when classProperties is disabled and Flow is enabled ( #300 )
2017-03-01 11:55:24 +01:00
Henry Zhu
5e0cce4974
Merge branch 'master' into 7.0
2017-02-28 14:37:13 -05:00
Brian Ng
09bb9bc6be
Fix parsing yield with dynamicImport ( #383 )
2017-02-28 12:43:34 -05:00
Henry Zhu
8d90dc0d10
[7.0] Change RestProperty/SpreadProperty to RestElement/SpreadElement ( #384 )
...
* [7.0] Change RestProperty/SpreadProperty to RestElement/SpreadElement
* Fix rest element in array pattern at invalid location
2017-02-28 12:31:58 -05:00
Brian Ng
cd133ff8e1
Ensure consistent start args for parseParenItem ( #386 )
2017-02-28 12:56:56 +01:00
Henry Zhu
2dd57d17b9
Revert "Fix export default async function to be FunctionDeclaration" ( #375 )
2017-02-23 09:50:33 -05:00
Henry Zhu
b0f8405b52
Revert "Don't parse class properties without initializers when classProperties plugin is disabled, and Flow is enabled" ( #376 )
2017-02-23 09:50:25 -05:00
Kevin Gibbons
561d4f74b0
Forbid semicolons after decorators in classes ( #352 )
2017-02-22 16:24:40 +01:00
Brian Ng
ad8d520406
Ensure takeDecorators is called on exported class ( #358 )
2017-02-22 16:22:38 +01:00
Daniel Tschinder
7bf553a575
Merge branch 'master' into 7.0
2017-02-20 23:49:27 +01:00
Daniel Tschinder
b023470c7e
estree: correctly change literals in all cases ( #368 )
2017-02-20 23:47:57 +01:00
Daniel Tschinder
50ffa49201
Merge branch 'master' into 7.0
...
# Conflicts:
# src/plugins/flow.js
2017-02-20 22:47:17 +01:00
Daniel Tschinder
2ef00a6631
Fix negative number literal typeannotations ( #366 )
...
* Fix negative number literal typeannotations
Also use parseLiteral() to parser string and number literal typeannotations
so that future changes (estree) to literals are also reflected to flow.
* Instead of invalid fallthrough throw immediately
* Increase coverage and better error mesage
2017-02-20 22:43:59 +01:00
Daniel Tschinder
d88befdd30
Merge branch 'master' into 7.0
...
# Conflicts:
# src/parser/index.js
2017-02-12 13:32:06 +01:00
Daniel Tschinder
1cca7000d1
Reintroduce Variance node ( #333 )
...
* Reintroduce Variance node
* Optimize code and coverage
tt.plusMin can only be + or - so no need to have an elseif
2017-02-12 13:28:14 +01:00
Charles Pick
cd3f14921e
Rename NumericLiteralTypeAnnotation to NumberLiteralTypeAnnotation ( #332 )
2017-02-12 13:14:35 +01:00
Daniel Tschinder
fac13290d7
Estree compatibility as plugin ( #277 )
...
* Initial estree support for ClassMethod
* Handle literals for estree
* Fix regex
* correct output of regexp and regenerate test
* Add tests for validation stuff with estree plugin
* Parse Properties correctly
This also refactors how babylon parses obj properties in general
so that this logic can be more easily extended.
* Run all throws-tests a second time with estree plugin
* Fix all throw tests
* Remove rebase conflict
* Correctly set kind
This ensures state.inMethod gets propagated correctly
* Add computed: false to methods with ident async
* Implement directive field on Directives
* Test invalid directives
* more tests
2017-02-12 12:48:41 +01:00
Kristof Degrave
1eaf01661b
babel/babylon#328 babel/babylon#205 ?. as nullPropagation. For now it only works for member access. (.? or ?.[) If the object is undefined this will return undefined. If the object on which you want to access the property is defined, the value of the propery will be given back.
2017-02-11 21:20:15 +01:00
Kristof Degrave
b902fe6c7b
?. && ?[ as member access with nullPropagation. If the object is undefined this will return undefined. If the object on which you want to access the property is defined, the value of the propery will be given back.
2017-02-11 16:44:28 +01:00
Daniel Tschinder
c79dd953ea
Fix #304 and #309 ( #339 )
2017-02-10 15:36:46 +01:00
Raphael Mu
f25a2fbc78
add startLine option ( #346 )
2017-02-10 15:06:28 +01:00