106 Commits

Author SHA1 Message Date
Basil Hosmer
cb4b2b0744 flow plugin: generate exact object type annotations (#3702) 2016-09-20 11:10:55 +02:00
Dan Harper
41f2bbc104 Flow: Fix generating arrow functions with param (#4504)
* transform-flow-comments, single arrow param support #4503

* further tests for printing single arrow func param flow code

* cleanup
2016-09-12 08:27:49 -04:00
Mathias Bynens
b9919bdc48 babel-generator: Ensure ASCII-safe output for string literals (#4478)
Ref. #4477.
2016-09-08 18:04:52 -04:00
Paul O’Shannessy
55f37a1b1e Use arrow syntax for ObjectTypeProperty FunctionTypeAnnotations (#3663)
This fixes an issue where optional properties would get transformed to
an invalid syntax. The easiest solution was to make all FunctionTypes
get transformed to the arrow syntax (previously everything went the
other way).
2016-08-20 10:37:56 -04:00
Daniel Tschinder
308de41992 Add support for the new declare module.exports of flow. (#3570) 2016-08-16 16:54:00 +02:00
Logan Smyth
a13bf6e0be Drop the unhelpful 'keyword' helper. 2016-07-18 19:12:22 -07:00
Logan Smyth
1b527eb23c Perform number decimal checks at the token level. 2016-07-18 19:12:21 -07:00
Logan Smyth
1bbf109e8e Move aux comments entirely into printer. 2016-07-17 21:51:01 -07:00
Logan Smyth
5de7433147 Avoid calls to isUserWhitespacable by explicitly marking statement lists. 2016-07-17 21:51:00 -07:00
Logan Smyth
6bf52b74c0 Include newline insertion in the call sites of rightBrace. 2016-07-17 12:39:22 -07:00
Logan Smyth
0e05e9f216 Rely on .space and .newline behavior instead of explicit format checks. 2016-07-17 12:39:22 -07:00
Logan Smyth
1bf76b0f33 Use .append to force-commit semicolons for empty statements. 2016-07-14 22:58:48 -07:00
Logan Smyth
b841d12c9e Initialize inForStatementInitCounter as a public var. 2016-07-14 22:58:47 -07:00
Logan Smyth
cb60808500 Make buffer a property for managing the token queue. 2016-07-05 21:02:46 -07:00
Logan Smyth
f908f3fc88 Use 'push' for all cases. 2016-07-04 22:49:59 -07:00
Logan Smyth
e4da8cfea5 Use the standard newline function. 2016-07-02 15:38:05 -07:00
Sam Pepose
199a612131 Fixed incorrect printing of array of nullable flow type 2016-06-22 20:33:43 -07:00
Logan Smyth
df2c3f3d25 Use the common space helper everywhere to ensure we get the smallest output possible. 2016-06-16 22:00:24 -07:00
Logan Smyth
5c74ebb87e Remove unneeded space check. 2016-06-16 22:00:24 -07:00
Logan Smyth
1514d0a1ad Drop some space-insertion logic. 2016-06-16 22:00:23 -07:00
Logan Smyth
4286cb4f2a Explicitly label standalone tokens and words. 2016-06-16 22:00:23 -07:00
Logan Smyth
e702e67233 Split all of the pushes into individual tokens. 2016-06-16 22:00:23 -07:00
Logan Smyth
22e2c88269 Drop the unneeded noIndent function param. 2016-06-16 22:00:23 -07:00
Logan Smyth
f566700657 Avoid processing indentation for every pushed string. 2016-06-16 21:59:51 -07:00
Logan Smyth
8336aa52e8 Split all of the separators into functions. 2016-06-16 20:31:19 -07:00
Logan Smyth
3e1a661eb6 Use the general list handlers and the default separator. 2016-06-16 20:31:19 -07:00
Logan Smyth
315c075419 Remove the unnecessary push/_push division. 2016-06-16 20:31:19 -07:00
Logan Smyth
528128f62d Avoid looking for raw values for all nodes. 2016-06-16 20:31:19 -07:00
Logan Smyth
680fcc16d7 Standardize on .endsWith 2016-06-16 20:31:19 -07:00
Logan Smyth
61e3b1d314 Remove incorrect function/class check. 2016-06-16 20:31:19 -07:00
Logan Smyth
0be2f1cf48 Remove unnecessary ensureSemicolon. 2016-06-16 20:31:19 -07:00
Logan Smyth
67763085ab Be consistent with semicolons. 2016-06-16 20:31:19 -07:00
Henry Zhu
b567c02413 generator tests 2016-06-10 18:05:54 -04:00
Henry Zhu
ff42a744df add back in identifier 2016-06-10 17:07:03 -04:00
Henry Zhu
ad0e1ba6de Support changes in flow parsing 2016-06-08 13:07:58 -04:00
dlwalsh
829d4497c9 remove micro modules in favour of lodash functions (#3500) 2016-05-15 22:00:50 -04:00
Jordan Klassen
dc1f40540d Upgrade to lodash 4 (#3315)
* Upgrade to lodash 4

* Fix incorrect require in babel-runtime/scripts

* Replace cloneDeep with cloneDeepWith where applicable
2016-05-13 17:15:14 -04:00
Logan Smyth
81e6d4147d Map the end of block statement nodes to the end of their original location - fixes T7258 2016-04-11 01:54:41 -07:00
Sam Goldman
a38a58bad8 Add support for Flow def-site variance syntax
This syntax allows you to specify whether a type variable can appear in
a covariant or contravariant position, and is super useful for, say,
Promise.

Right now this is hacked in jankily, but in the next major release we
should stop using Identifier nodes for type parameters.
2016-03-06 14:44:09 -08:00
Amjad Masad
2fbe28cc88 Remove remaining @flow annotations 2016-03-03 15:10:59 -08:00
Amjad Masad
12ee11a0a4 Revert "Remove Flow annotations and pragmas"
This reverts commit 4252244d06b225ab26a02d52c04f9940a3e4d6a2.
2016-03-03 15:03:55 -08:00
Henry Zhu
66ea5342de Merge pull request #3379 from babel/memexp-numliteral
Fix: invalid codegen for non decimal numeric literals in MemberExpression
2016-02-29 11:40:30 -05:00
Henry Zhu
35ed18f628 Fix invalid codegen for non decimal numeric literals in MemberExpression
Fixes T7156
2016-02-28 20:34:45 -05:00
Sam Goldman
5167d001c5 Remove @noflow as well 2016-02-28 13:25:36 -10:00
Sam Goldman
4252244d06 Remove Flow annotations and pragmas 2016-02-28 13:18:57 -10:00
Jason
28ca3f7f3a [generator] bug fix
- Fix Whitespace with empty token list
- Force a newline for line comments in concise mode
2016-02-17 13:01:54 +08:00
Sebastian McKenzie
b5bcd64120 noflow some files 2016-02-14 23:58:37 +00:00
Sebastian McKenzie
5b89849f43 Switch to klint, fix some lint rules 2016-02-14 23:25:14 +00:00
Zachary Miller
33b4ef5d52 Parenthize "in" in for-loop init, even when init has nested for-loop 2016-02-05 14:28:01 -06:00
Amjad Masad
bcc32da0d9 Merge pull request #3316 from forivall/babel-generator-simplify-node
Simplify babel-generator/node/index.js
2016-02-04 14:10:16 -08:00