357 Commits

Author SHA1 Message Date
Kevin Yeh
fbd1398c92 Implement Rewrite for ast::Stmt 2015-11-19 14:23:56 -06:00
Kevin Yeh
22837b0748 Combine block utilities 2015-11-19 14:23:56 -06:00
David Barnett
30aec386f4 Comments in structs use appropriate style
Fixes #491
2015-11-17 11:57:49 +13:00
Eli Friedman
2fff041b43 Pass in whether an ast::Path is in an expression context.
This gets rid of a slightly nasty hack involving scanning the source
expression for a ":".
2015-11-14 13:54:57 -08:00
Eli Friedman
1c235de97d Fix crash speculatively parsing macro arguments as expressions.
The problem is essentially that if we try to parse a token tree using a
CodeMap different from the one the tree was originally parsed with,
spans become nonsense. Since CodeMaps can't be cloned, we're basically
forced to use the original ParseSess for additional parsing.

Ideally, rustfmt would be a bit more clever and figure out how to parse
macro arguments based on the definition of the macro itself, rather than
just guessing that a particular token sequence looks like an expression,
but this is good enough for now.

Fixes #538.
2015-10-27 23:41:32 -07:00
Marcus Klaas
d122ad5adc Address some issues with multiline patterns in let statements 2015-10-24 13:13:15 +02:00
Ravi Shankar
d135217db2 show rustfmt coverage! 2015-10-24 15:22:37 +05:30
Marcus Klaas
b41965539a Bump match inner block indent a level 2015-10-23 21:39:26 +02:00
Eli Friedman
e720218ffb Improve handling of commas after match arms.
Fixes #507. Fixes #508.
2015-10-21 14:35:45 -07:00
Marcus Klaas
e8447a8210 Fix large block comments 2015-10-19 23:06:36 +02:00
Marcus Klaas
3970748f59 Remove overflow indentation 2015-10-19 23:06:36 +02:00
Marcus Klaas
ca023ba9b7 Format some patterns 2015-10-19 20:15:36 +02:00
Nick Cameron
d326a29b4b Merge pull request #479 from marcusklaas/moar-types
Format more type variants
2015-10-18 15:40:11 +13:00
Nick Cameron
d7019ce897 Merge pull request #474 from marcusklaas/fn-indent
Properly indent pub fns in extern blocks
2015-10-18 15:19:32 +13:00
Marcus Klaas
01937061a9 Format more type variants 2015-10-17 16:05:59 +02:00
Marcus Klaas
5407202fdf Properly indent pub fns in extern blocks 2015-10-16 23:05:11 +02:00
Marcus Klaas
a9bd695723 Format vec! macro using brackets 2015-10-16 22:55:42 +02:00
Marcus Klaas
5cc60dca97 Remove unsafe push and pop variants 2015-10-16 18:11:46 +02:00
Marcus Klaas
b039e3a8c3 Force semicolons after break/continue/return. Remove after blocks. 2015-10-15 19:55:42 +02:00
Gaurav Saxena
7f1fbea8e9 added semicolons for return statements 2015-10-13 02:22:35 -04:00
Marcus Klaas
e6af5d2c83 Use visual block indentation for array literals 2015-10-12 21:14:12 +02:00
Will Speak
a5081c9832 Fix Build to Compile with 1.5.0-nightly (87cd2c082)
There was an extra, unused, paramter int he match arm which causes an
error when compiling with the latest nightly.
2015-10-10 19:02:25 +01:00
Marcus Klaas
ccd404ac6f Try "overflowing" the final function argument when it's a closure
This means that we try formatting the last argument of a function call with block
indentation instead of visual indentation when it is a closure and its first line
fits on the same line as the first arguments.
2015-10-08 23:40:33 +02:00
Marcus Klaas de Vries
5eeae3944e Merge pull request #404 from marcusklaas/rewrite-list-fmt
List formatting refactoring
2015-10-06 22:29:52 +02:00
Marcus Klaas
199d40fa55 Increase default function call width limit 2015-10-06 22:27:11 +02:00
Marcus Klaas
a76df6b4d9 Make listItem contain option 2015-10-04 20:40:14 +02:00
Marcus Klaas
965ea09664 Split ListTactic decision logic from write_list 2015-10-04 20:40:14 +02:00
Marcus Klaas
d0be26b383 Unify pair formatting code 2015-10-02 12:25:22 +02:00
Marcus Klaas
ca0b860688 Format repeated element array literals 2015-10-02 12:00:28 +02:00
Marcus Klaas
84718b5b90 Format rustfmt's own indices 2015-10-02 11:48:52 +02:00
Marcus Klaas
ad2e3b8e2b Format indices 2015-10-02 11:47:03 +02:00
Marcus Klaas
603f2034a5 Format type casts 2015-10-02 11:31:40 +02:00
Marcus Klaas
30aefa6dc7 Prevent arithmetic overflow handling match arm comments 2015-09-27 22:11:17 +02:00
Marcus Klaas de Vries
afee62e476 Merge pull request #370 from marcusklaas/match-arm-delining
Improve heuristics for match arm body placement
2015-09-27 12:00:57 +02:00
Marcus Klaas
2eb67827a7 Add extra tests for match arm placement 2015-09-27 11:58:26 +02:00
Marcus Klaas
2d4a0cbe3b Fix match arm indentation bug 2015-09-26 23:18:57 +02:00
Marcus Klaas
078fff068a Improve heuristics for match arm body placement 2015-09-26 22:35:53 +02:00
Nick Cameron
b894dd8abf Use a width heuristic for struct lits.
Closes #123
2015-09-26 18:25:41 +12:00
Nick Cameron
d161b8df72 rebasing changes and address review comment 2015-09-26 14:00:19 +12:00
Nick Cameron
99d71a164a Changes to source formatting 2015-09-26 13:58:12 +12:00
Nick Cameron
dcbfd0469f Merge pull request #362 from marcusklaas/rewrite-string
Make rewrite_string return `Option<String>`
2015-09-26 13:36:59 +12:00
Marcus Klaas
5db17ca703 Use the maximum available width in struct formatting
Previously, we'd use an approximation for the maximum width since the configuration wasn't available in `write_list`.
2015-09-25 16:56:22 +02:00
Marcus Klaas
bc0dd2c68d Adjust for changed representation of box expressions in AST 2015-09-25 13:25:52 +02:00
Marcus Klaas
a7690cb1e5 Make rewrite_string return Option<String> 2015-09-25 13:01:20 +02:00
Eli Friedman
19e887c309 Add support for formatting AddrOf (unary "&"). 2015-09-24 01:13:57 -07:00
Nick Cameron
d941fe20b4 Merge pull request #358 from eefriedman/rewrite-return
Add support for formatting "return" expressions.
2015-09-24 18:19:37 +12:00
Eli Friedman
69da1a78de Add support for formatting "return" expressions.
Fixes #303.
2015-09-23 23:12:04 -07:00
Eli Friedman
ed597a8059 Exhaustively enumerate expressions in expression rewriting. 2015-09-23 22:51:37 -07:00
Scyptnex
f1dfab5a29 fix for #355 and test cases 2015-09-24 12:01:48 +10:00
Scyptnex
19d1ec1dec Fixes #339 and #272 2015-09-24 10:22:06 +10:00