Commit graph

999 commits

Author SHA1 Message Date
topecongiro
c3cc8fcb13 Format defaultness 2017-07-27 09:43:35 +09:00
Nick Cameron
1f991d00e0 Merge pull request #1822 from topecongiro/issue-1172
Remove newlines between list elements for expressions
2017-07-27 11:15:53 +12:00
Seiichi Uchida
7c9aee78f0 Update tests 2017-07-26 22:43:50 +09:00
topecongiro
38614e7af1 Format source codes and update tests 2017-07-26 17:43:17 +09:00
topecongiro
e523f053a3 Format source codes and update tests 2017-07-26 16:30:58 +09:00
Nick Cameron
8b5831b501 Merge pull request #1818 from topecongiro/issue-1194
Put braces on the next line if it exceeds max width
2017-07-26 11:40:41 +12:00
Nick Cameron
b831df57af Merge pull request #1817 from topecongiro/file-lines-tests
Restore comments in file-lines tests
2017-07-26 11:36:54 +12:00
topecongiro
d97ecd319d Update tests 2017-07-25 18:51:29 +09:00
topecongiro
66703e3d6c Restore comments in file-liens tests 2017-07-25 15:47:44 +09:00
topecongiro
a17993c14a Force vertical layout when struct_variant_width is 0 2017-07-25 15:19:09 +09:00
Seiichi Uchida
5c99d6c6bc Update tests 2017-07-25 00:56:09 +09:00
Nick Cameron
b559a0f2f2 Merge pull request #1808 from topecongiro/issue-831
Allow block-like rhs expression to stay on the same line with lhs
2017-07-22 16:29:36 +12:00
topecongiro
d7a57d36e7 Update tests 2017-07-22 11:18:59 +09:00
topecongiro
68c6fe70fd Format source codes and update tests 2017-07-21 17:57:31 +09:00
Nick Cameron
bb27bc5c68 Merge pull request #1806 from topecongiro/item-brace-style
Apply item_brace_style to module
2017-07-21 17:58:39 +12:00
topecongiro
3e3d3c00de Update tests 2017-07-21 13:55:34 +09:00
topecongiro
db5f77b7d0 Consider max_width when rewriting struct in single-line 2017-07-21 07:17:49 +09:00
topecongiro
b233653a22 Cover missing comments between attributes and expressions 2017-07-20 23:58:00 +09:00
Seiichi Uchida
a8b0a6e4c5 Format source codes and update tests 2017-07-20 00:42:00 +09:00
Seiichi Uchida
9777c0de93 Format source codes and update tests 2017-07-20 00:42:00 +09:00
Seiichi Uchida
b78b6e8b09 Format source codes and update tests 2017-07-20 00:42:00 +09:00
Seiichi Uchida
de403f4f65 Use offset_left instead of shrink_left 2017-07-20 00:41:36 +09:00
topecongiro
988e387132 Add imports_indent and imports_layout config options 2017-07-14 09:18:28 +09:00
topecongiro
dcb953b901 Add trailing comma when using Mixed indent style with newline 2017-07-13 20:32:46 +09:00
topecongiro
3bf66436e7 Update tests 2017-07-13 18:43:35 +09:00
Nick Cameron
b37e2664a6 Merge pull request #1786 from euclio/globs
add test for root glob imports
2017-07-13 08:15:46 +12:00
Nick Cameron
469fd52633 Merge pull request #1787 from euclio/errors
assert no errors on formatting test source
2017-07-13 08:13:48 +12:00
Andy Russell
86d48981ee
assert no errors on formatting test source
Fixes #28.
2017-07-12 13:21:36 -04:00
Andy Russell
320f18345b
add test for root glob imports
Fixes #1472.
2017-07-12 12:53:02 -04:00
Seiichi Uchida
51641f167e Do not count the number of parens inside str or comment 2017-07-12 17:17:41 +09:00
topecongiro
2fb66cd1d3 Add trailing_semicolon config option
trailing_semicolon controls whether to add a trailing semicolon after break,
continue and return.
2017-07-12 14:16:06 +09:00
topecongiro
c11aac04a3 Update wrap_match_arms option tests and visual guide 2017-07-11 21:53:57 +09:00
topecongiro
be55f856bb Update tests 2017-07-11 21:53:48 +09:00
Nick Cameron
3552595a3b Merge pull request #1780 from topecongiro/rfc/union
Format union
2017-07-11 16:16:35 +12:00
Nick Cameron
4cfc2bfbd4 Merge pull request #1778 from topecongiro/rfc/match-arm-multiline-pattern
Rfc: fix up match arm pattern
2017-07-11 16:11:09 +12:00
Seiichi Uchida
bc90a12b8d Format union 2017-07-10 17:26:55 +09:00
topecongiro
7cbc48ae32 Update tests 2017-07-10 16:52:55 +09:00
Nick Cameron
5350f71f41 Merge pull request #1776 from topecongiro/poor-formatting/index-budget
Use correct one line budget when rewriting index
2017-07-10 17:52:23 +12:00
topecongiro
65790f2b2a Cover missing comments before and after where 2017-07-10 14:38:16 +09:00
topecongiro
7ab4bdfd85 Use correct one line budget when rewriting index 2017-07-10 14:23:29 +09:00
Seiichi Uchida
78224a0644 Update tests 2017-07-10 02:25:26 +09:00
topecongiro
680a3a1d19 Add tests to check alignment don't exceed max_width 2017-07-07 09:04:06 +09:00
topecongiro
a4cce31ea9 Update tests 2017-07-07 09:04:06 +09:00
Nick Cameron
cfec7ad593 Merge pull request #1745 from topecongiro/assignment
Put rhs of assignment on the next line if it fits in a single line
2017-07-07 11:54:06 +12:00
Nick Cameron
b9a1938098 Merge pull request #1768 from topecongiro/huge-array
Add array_horizontal_layout_threshold option
2017-07-07 06:48:48 +12:00
topecongiro
8e8e7a4215 Add array_horizontal_layout_threshold option 2017-07-06 01:19:36 +09:00
topecongiro
4bd6761caf Update tests 2017-07-06 01:19:31 +09:00
topecongiro
cb48435ff3 Format source codes 2017-07-05 18:31:37 +09:00
topecongiro
6a7f866cfe Format source codes 2017-07-05 18:12:43 +09:00
topecongiro
332cc97986 Use block indent style for struct tuple 2017-07-05 18:00:36 +09:00
Nick Cameron
6546aaf5ec Merge pull request #1767 from topecongiro/range-with-floating-literal
Add a space before range if lhs ends with dot
2017-07-05 15:46:43 +12:00
Nick Cameron
734de8b2b7 Merge pull request #1765 from topecongiro/v-alignment/struct-field
Add vertical alignment option for struct fields
2017-07-05 12:11:52 +12:00
topecongiro
183e3482e5 Add a space before range if lhs ends with dot 2017-07-04 20:23:57 +09:00
Nick Cameron
2400f39f98 Merge pull request #1757 from topecongiro/rfc/combine-array
Rfc: Combine Array
2017-07-04 18:22:32 +12:00
Nick Cameron
960dd3242a Merge pull request #1756 from topecongiro/closure_block_indent_threshold
Use correct one line budget in rewrite_closure_block
2017-07-04 18:21:11 +12:00
topecongiro
2ed6feca83 Update tests
Now structs.rs has no overflowing max_width :)
2017-07-03 18:55:11 +09:00
topecongiro
bd991851c8 Format source codes 2017-07-03 18:54:26 +09:00
topecongiro
c762cf9b43 Update tests 2017-06-29 11:01:22 +09:00
topecongiro
0199e08367 Use correct one line budget in rewrite_closure_block 2017-06-28 10:56:29 +09:00
topecongiro
5f77581763 Put multi-lined index on the next line if it fits in one line 2017-06-26 07:57:06 +09:00
topecongiro
eeb5599b4b Do not add trailing comma inside macro invocation unless there already is 2017-06-23 13:43:43 +09:00
topecongiro
f062544cdd Update tests inside macro.rs
I moved around some tests in order to prevent rustfmt from failing to format
tests after macro invocations whose arguments cannot be parsed as expressions.
2017-06-23 13:03:37 +09:00
topecongiro
b5a13602d9 Update tests 2017-06-20 22:35:16 +09:00
Seiichi Uchida
f74be44b1c Merge pull request #1732 from olson-sean-k/issue-1377
Keep brace on same line as `match` when using `ClosingNextLine`.
2017-06-20 12:07:03 +09:00
Nick Cameron
1ebbc3cd68 Merge pull request #1734 from topecongiro/raw-string-literal
Allow extending a chain after raw string literal
2017-06-20 12:29:25 +12:00
Nick Cameron
779f037c8d Merge pull request #1728 from topecongiro/trailing-comma
Apply config.trailing_comma wherever possible
2017-06-20 12:22:58 +12:00
Sean Olson
ea1df1777b Modify control_brace_sytle test to ensure match braces are formatted correctly. 2017-06-19 08:12:15 -07:00
Seiichi Uchida
b99f3cb447 Allow extending a chain after raw string literal 2017-06-19 22:06:08 +09:00
topecongiro
512c8c1edf Apply config.trailing_comma wherever possible 2017-06-19 16:00:04 +09:00
topecongiro
ec4b439484 Disallow overflowing closure if there are multiple closures in args 2017-06-19 12:07:20 +09:00
topecongiro
482675cf58 Update tests 2017-06-19 11:25:21 +09:00
Seiichi Uchida
6afb0e856c Avoid line break when rhs of assignment is an invalid macro 2017-06-18 14:25:21 +09:00
Nick Cameron
be18e7af90 Merge pull request #1717 from topecongiro/type-and-generics
Refactor format against types and generics
2017-06-18 15:57:34 +12:00
Seiichi Uchida
4d11faff4b Update tests 2017-06-18 02:16:27 +09:00
topecongiro
0440c2c377 Update tests 2017-06-17 16:57:00 +09:00
topecongiro
e31f5eceac Use correct span for Infer type inside closure header 2017-06-17 15:35:29 +09:00
topecongiro
897d7bdcb9 Add a test for #1697 2017-06-17 15:26:59 +09:00
topecongiro
9b73490491 Update tests 2017-06-17 15:26:59 +09:00
Nick Cameron
06f351664b Merge pull request #1705 from topecongiro/issue-1703
Preserve comments inside attributes
2017-06-17 16:58:11 +12:00
topecongiro
f60a810730 Preserve comments inside attributes 2017-06-17 05:44:54 +09:00
topecongiro
4a5871eccc Use correct indentaion for vec! with semicolon 2017-06-16 13:57:37 +09:00
Nick Cameron
c5538d2a58 Merge pull request #1692 from topecongiro/chain/last-item
Allow overflowing the last item of chain only if it is multi-lined
2017-06-16 13:24:03 +12:00
topecongiro
208ff15954 Format source codes 2017-06-16 08:49:49 +09:00
topecongiro
e7240f5e24 Add and remove comments 2017-06-16 08:28:12 +09:00
topecongiro
0d5768964b Format source codes and add a test 2017-06-16 07:36:31 +09:00
topecongiro
de10113c74 Update tests
Add more patterns and types
2017-06-15 16:55:31 +09:00
Nick Cameron
a1fdc32d99 Merge pull request #1673 from topecongiro/get-tests-passing-again
Get tests passing again
2017-06-15 10:39:29 +12:00
Nick Cameron
2dde4547fc Merge pull request #1666 from topecongiro/tuple-type
Block indent tuple type when fn_call_style is Block
2017-06-15 10:01:00 +12:00
topecongiro
b8f11a4e3c Format source codes 2017-06-14 20:39:07 +09:00
Robin Stocker
a13db07b03 Add back cargo-fmt binary (#1670)
When there are no `[[bin]]` sections, all the binaries in `src/bin` are
automatically picked up. When a section is added, that is no longer the
case, so all the binaries need to be specified explicitly.
2017-06-14 14:16:51 +10:00
topecongiro
dacb1ba050 Update tests 2017-06-14 09:30:04 +09:00
topecongiro
6047179ab0 Update tests 2017-06-14 00:09:17 +09:00
Nick Cameron
18ccd0190e Rebasing 2017-06-13 14:49:47 +12:00
Nick Cameron
6f30d9e7c9 Reformat tests 2017-06-13 14:42:54 +12:00
topecongiro
f084a8af96 Fix excessive indentation in trait where clause when using Rfc style 2017-06-13 10:18:55 +09:00
Nick Cameron
5531a93b57 Merge pull request #1657 from topecongiro/issue-1656
Put match arm's guard on new line if it exceeds max width
2017-06-13 11:58:16 +12:00
Nick Cameron
5d78d1fe00 Merge pull request #1655 from topecongiro/issue-1652
Use correct indent for return type when it goes multi line
2017-06-13 11:57:30 +12:00
Nick Cameron
c07925f498 Merge pull request #1647 from topecongiro/refactor-impl-format
Refactor impl format
2017-06-13 11:55:33 +12:00
Nick Cameron
6ed3077651 Merge pull request #1654 from topecongiro/over-long-lines
Use block indent for args of macro if single line args exceeds max width
2017-06-13 09:41:59 +12:00
topecongiro
57fc39305d Put guard on newline if it exceeds max width 2017-06-12 17:25:38 +09:00
topecongiro
d269189f19 Use correct indent for return type when it goes multi line 2017-06-12 16:23:10 +09:00
topecongiro
9ad499786d Use block indent for args if single line args exceeds max width 2017-06-12 15:58:27 +09:00
Nick Cameron
272b0b6f49 Merge pull request #1649 from topecongiro/issue-1648
Add offset to struct literal fields when `struct_lit_style` is `"Visual"`
2017-06-12 10:39:28 +12:00
topecongiro
e94fcfcd39 Update tests 2017-06-11 23:27:02 +09:00
Seiichi Uchida
f2838595d5 Add visual offset when using struct_lit_style is Visual 2017-06-10 22:20:11 +09:00
topecongiro
bd80077be8 Add format_trait_ref_then_update_result 2017-06-10 21:07:38 +09:00
topecongiro
9eefc6fc8d Share codes when rewriting generics 2017-06-10 18:31:01 +09:00
topecongiro
c92064c30a Force brace on new line if the signature ends with comment 2017-06-09 16:15:31 +09:00
est31
4665943b51 Fix the pub-restricted tests 2017-06-06 07:32:07 +02:00
Nick Cameron
2dc1de9307 Update a test 2017-06-06 07:32:06 +02:00
topecongiro
27da80324c Implement catch 2017-06-06 07:32:06 +02:00
Nick Cameron
8ac9245df4 Merge pull request #1634 from topecongiro/impl-rewrite-attribute
Implement Rewrite trait for syntax::ast::Attribute
2017-06-06 17:11:10 +12:00
topecongiro
7be703a637 Implement Rewrite trait for syntax::ast::Attribute 2017-06-06 13:55:34 +09:00
Nick Cameron
6a9d7dab0d Merge pull request #1637 from est31/master
Add config options for spaces around the colon in struct literal fields
2017-06-06 16:20:16 +12:00
Nick Cameron
130aa70e3a Merge pull request #1621 from topecongiro/combining
Combine more expressions
2017-06-06 14:52:48 +12:00
est31
aa4cd311bb Add config options for spaces around the colon in struct literal fields
In Rust, colons are used for three purposes:

* Type annotations, including type ascription
* Trait bounds
* Struct literal fields

This commit adds options for the last missing of the three purposes,
struct literal fields.
2017-06-06 03:50:58 +02:00
topecongiro
41b7cc6a73 Set combine_control_expr to false by default and true in rfc-rustfmt 2017-06-05 15:31:44 +09:00
Nick Cameron
d04ab9e5ba Merge pull request #1630 from topecongiro/issue-1115
Allow comments after attributes on enum fields
2017-06-05 11:41:52 +12:00
Nick Cameron
14a1ea8193 Merge pull request #1629 from topecongiro/issue-982
Use recover_comment_removed in rewrite_static
2017-06-05 11:37:21 +12:00
topecongiro
d7de5b7656 Allow comments after attributes on enum fields 2017-06-04 23:27:21 +09:00
topecongiro
62d200d9cf Update tests 2017-06-04 19:35:29 +09:00
topecongiro
d54634bd7c Use recover_comment_removed in rewrite_static 2017-06-04 18:44:08 +09:00
Nick Cameron
3e25e628a1 Merge pull request #1619 from topecongiro/config/format_if_else_cond_comment
Add format_if_else_cond_comment config option
2017-06-04 15:26:26 +12:00
Nick Cameron
6f1cb950d6 Merge pull request #1628 from topecongiro/issue-1113
Preserve the layout of comment after return type
2017-06-04 11:40:37 +12:00
Nick Cameron
3090086000 Merge pull request #1627 from topecongiro/issue-1624
Refactor vertical layout of function definition with options
2017-06-04 11:34:25 +12:00
topecongiro
15e936bfc7 Preserve the layout of comment after return type 2017-06-04 06:59:55 +09:00
Seiichi Uchida
dd13761f85 Organize vertical layout of function definition 2017-06-03 23:18:39 +09:00
Seiichi Uchida
d21792a730 Put opening paren next to multi line generic 2017-06-03 23:16:29 +09:00
Seiichi Uchida
08b5375776 Forbid trailing comma at the end of args of variadic functions 2017-06-03 15:03:08 +09:00
topecongiro
aadd3e11f4 Unindent comment on top of else 2017-06-02 11:58:58 +09:00
Nick Cameron
cdc3f9321c Rename the Style::Default option to Legacy 2017-06-02 11:44:38 +12:00
Nick Cameron
0480f7e105 Merge pull request #1620 from topecongiro/rfc-if
Use correct line budget when using Rfc control style
2017-06-02 11:36:16 +12:00
topecongiro
fbd4b87329 Use correct one line budget when using Rfc control style 2017-06-01 19:59:50 +09:00
Seiichi Uchida
789abf063d Use block indent style when visual indent failed 2017-06-01 12:08:20 +09:00
Nick Cameron
4d0ee80e61 Merge pull request #1609 from topecongiro/nested-tuple
Put a space between nested tuple field
2017-05-31 11:58:03 +12:00
topecongiro
b63e3aaa83 Put a space between nested tuple field 2017-05-30 20:40:05 +09:00
Nick Cameron
cfa3d59974 Merge pull request #1608 from topecongiro/issue-1598
Fix index bug in write_snippet_inner
2017-05-30 15:28:44 +12:00
topecongiro
33a7357543 Fix index bug in write_snippet_inner 2017-05-30 10:53:48 +09:00
topecongiro
924a9b5cb6 Allow longer custom comment 2017-05-30 08:46:25 +09:00
Nick Cameron
b79094262f Merge pull request #1604 from topecongiro/comment-group
Format comments with different opening in different manner
2017-05-30 08:53:22 +12:00
topecongiro
bcebe9e7de Use different style when rewriting comment with different opener 2017-05-29 11:28:48 +09:00
Nick Cameron
9b79cb5c22 Merge pull request #1602 from topecongiro/attributes-on-expressions
Allow attributes on expressions
2017-05-28 18:34:50 +12:00
topecongiro
72c04facd2 Add tests for issues which can be closed on the current master
This PR adds tests for #325, #1092,  #1214, #1278, #1329 and #1427.
2017-05-28 13:24:05 +09:00
topecongiro
99c2eab5ac Allow attributes on expressions 2017-05-28 11:44:41 +09:00
Seiichi Uchida
4402412b78 Allow attributes in generics of impl 2017-05-27 23:59:29 +09:00
Nick Cameron
8ac3fc36cc Merge pull request #1597 from topecongiro/comments-after-attributes
Allow comments after attributes of struct fields
2017-05-27 13:47:42 +12:00
Nick Cameron
aad250e20e Merge pull request #1596 from topecongiro/issue-1595
Add a trailing comma if the last arg ends with comment
2017-05-27 13:38:14 +12:00
Nick Cameron
2dc4298b71 Merge pull request #1593 from topecongiro/issue-1439
Allow comments after where clause
2017-05-27 13:34:50 +12:00
Nick Cameron
4e5df80c03 Merge pull request #1588 from topecongiro/nesting-macro
Allow macro to be nested like function call
2017-05-27 13:28:47 +12:00
topecongiro
b6c503ac32 Allow comments after attributes of struct fields 2017-05-27 09:36:25 +09:00
topecongiro
67e8a690ff Add a trailing comma if the last arg ends with comment 2017-05-27 07:33:06 +09:00
topecongiro
dab14b4485 Allow comments after where clause 2017-05-27 02:07:58 +09:00
topecongiro
fcffe854b8 Allow default associated types 2017-05-26 17:17:12 +09:00
topecongiro
554605d47c Format source codes and add tests 2017-05-26 16:40:19 +09:00
topecongiro
0869bca85a Put closing paren on the next line when the last arg contains comment 2017-05-26 13:15:10 +09:00
Nick Cameron
3d135ebba4 Merge pull request #1586 from topecongiro/minor
Fix minor bugs
2017-05-26 08:43:52 +12:00
Seiichi Uchida
92270ba191 Add offset when rewriting index 2017-05-25 23:01:41 +09:00
Seiichi Uchida
189b6bd7bb Update tests 2017-05-25 22:55:33 +09:00
topecongiro
986abc24b4 Add a test for #1380 2017-05-25 16:30:45 +09:00
topecongiro
86856491bc Format source codes 2017-05-25 16:08:08 +09:00
topecongiro
2580d7a310 Add chain_split_single_child option 2017-05-25 16:07:56 +09:00
topecongiro
c69608a7e0 Allow the last elem in chain to overflow 2017-05-25 15:50:46 +09:00
topecongiro
635fdc662a Format source codes 2017-05-25 15:50:46 +09:00
topecongiro
c8ad521c9f Decide whether args fit in a single line inside rewrite_call_args 2017-05-25 06:10:00 +09:00
Nick Cameron
93c556c6ba Merge pull request #1578 from topecongiro/poor/macro
Use original code snippet for macro which contains invalid syntax
2017-05-24 11:43:10 +12:00
topecongiro
e3eec44690 Return original snippet when macro contains invalid syntax 2017-05-24 07:24:31 +09:00
topecongiro
04bb5d8929 Format source codes 2017-05-24 00:07:02 +09:00
topecongiro
ec33121aaf Format source codes 2017-05-23 22:13:29 +09:00
topecongiro
f83c22f24f Add trailing comma to a single arg in multiline 2017-05-23 13:26:59 +09:00
topecongiro
b4cd9584b3 Implement combining for tuple and block 2017-05-23 12:51:32 +09:00
topecongiro
2c15204f0c Update tests 2017-05-23 12:51:13 +09:00
topecongiro
dc8d3aa23a Update tests 2017-05-23 11:39:31 +09:00
topecongiro
13af774e55 Fix weird indentaion in chain 2017-05-23 11:37:12 +09:00
topecongiro
d16a0a399e Implement 'vec![expr; expr]' 2017-05-23 11:32:09 +09:00
Michael Killough
bce1f309b7 Merge branch 'master' of https://github.com/rust-lang-nursery/rustfmt into config 2017-05-19 16:10:27 +07:00
Ben Boeckel
8ca699ce26 config: fix suffices -> suffixes typo
Fixes #1477.
2017-05-18 08:03:47 -04:00
Seiichi Uchida
c0fae6a82a Merge pull request #1562 from flier/reorder_imports_in_group
reorder imports in group
2017-05-18 17:53:23 +09:00
Michael Killough
c3c2e823cb Merge branch 'master' of https://github.com/rust-lang-nursery/rustfmt into config 2017-05-18 13:05:19 +07:00
Flier Lu
1077a100a1 reorder imports in group 2017-05-18 13:26:34 +08:00
Michael Killough
222bac1397 Provide config.set().item(value) API.
This API isn't fantastic, but it's the best I can come up with without
something like `concat_idents!()`. There are relatively few places where
config is set, to hopefully the ugliness isn't disastrous.

Change previous occurences of `config.item = value` to this new API,
rather than using `config.override_value()`. Undo the changes to
`override_value()`, as it's no longer important to propogate the error
to the caller. Add a test for the new interface.
2017-05-18 11:42:32 +07:00
topecongiro
cfff3bd91e Use multiline when signature does not fit single line 2017-05-17 16:31:09 +09:00
Nick Cameron
6a70e9c22c Merge pull request #1559 from topecongiro/poor/chain
Allow the last element in chain to go multiline
2017-05-17 17:43:42 +12:00
topecongiro
d7b6f1199f Format source codes 2017-05-16 23:24:38 +09:00
Michael Killough
dcd3c0ed2e Add test for issue #1366.
As the comments in the issue state: it appears to work now, so this test
should just stop any regressions.

The second example in the issue description will format to the first,
which is then a fixed-point.
2017-05-16 16:17:46 +07:00
Michael Killough
c0bdbfa531 Switch to accessing config items via method.
Preparation for #865, which proposes adding a flag which outputs which
config options are used during formatting.

This PR should not make any difference to functionality. A lot of this
was search-and-replace.

Some areas worthy of review/discussion:

 - The method for each config item returns a clone of the underlying
   value. We can't simply return an immutable reference, as lots of
   places in the code expect to be able to pass the returned value as
   `bool` (not `&bool). It would be nice if the `bool` items could
   return a copy, but the more complex types a borrowed reference... but
   unfortunately, I couldn't get the macro to do this.
 - A few places (mostly tests and `src/bin/rustfmt.rs`) were overriding
   config items by modifying the fields of the `Config` struct directly.
   They now use the existing `override_value()` method, which has been
   modified to return a `Result` for use by `src/bin/rustfmt.rs`. This
   benefits of this are that the complex `file_lines` and `write_mode`
   strings are now parsed in one place (`Config.override_value`) instead
   of multiple. The disadvantages are that it moves the compile-time
   checks for config names to become run-time checks.
2017-05-16 15:47:09 +07:00
Seiichi Uchida
79ba34c607 Use offset_left for rewrite_unary_prefix 2017-05-15 22:55:01 +09:00
Nick Cameron
d1682b3473 Merge pull request #1510 from fintelia/better-filelines
Better file_lines
2017-05-15 09:19:18 +12:00
Nick Cameron
0ebd5775d7 Merge pull request #1550 from topecongiro/issue-1547
Prevent rewriting closure block to expr inside macro
2017-05-15 08:46:14 +12:00
Jonathan Behrens
4d2f6a29a7
Add and improve tests of file_lines 2017-05-13 13:45:35 -04:00
Seiichi Uchida
7ec78711f2 Prevent rewriting closure block to expr inside macro 2017-05-13 18:32:25 +09:00
Seiichi Uchida
d0a094eefb Merge pull request #1546 from topecongiro/bug/range-full
Add a missing trailing comma before elipses
2017-05-13 17:40:47 +09:00
topecongiro
4aa64674c9 Add a missing trailing comma before elipses 2017-05-13 07:23:34 +09:00
Seiichi Uchida
56515dd4d6 Merge pull request #1543 from topecongiro/field-attr
Support struct_field_attributes
2017-05-12 20:08:36 +09:00
topecongiro
744fa427e2 Support struct_field_attributes 2017-05-12 17:58:38 +09:00
topecongiro
384ce46eef Use vertical layout when args len is larger than fn_call_width 2017-05-12 16:30:26 +09:00
topecongiro
ba1a7b9e7f Try multi-line only when fn_call_style is Block and rewriting function call 2017-05-12 10:33:05 +09:00
Nick Cameron
1eec103516 Merge pull request #1523 from topecongiro/poor-formatting/fn_call_style
Use multiline when args exceeds max_width in fn_call_style = "block"
2017-05-10 08:27:24 +12:00
topecongiro
30a8050559 Use multiline when args exceeds max_width in fn_call_style = "block" 2017-05-10 00:27:57 +09:00
topecongiro
9d96c33d59 Inherit alignment to last else 2017-05-09 17:33:45 +09:00
Nick Cameron
35e1ca73fc Merge pull request #1519 from topecongiro/poor-formatting/if-else
Remove visual_indent when rewriting else block
2017-05-09 15:21:29 +12:00
topecongiro
0248e9869d Apply closure exception to match in args 2017-05-09 08:28:05 +09:00
topecongiro
f36411c339 Remove visual_indent when rewriting else block 2017-05-09 08:11:05 +09:00
topecongiro
d062d79fb5 Use block indent when visual indent failed 2017-05-08 08:07:18 +09:00
Nick Cameron
459b4449a6 Merge pull request #1442 from topecongiro/poor-formatting/trailing-comma
Remove comma from function definition with a single argument
2017-05-08 10:45:03 +12:00
topecongiro
2ee8e730a6 Add fallback path 2017-05-07 13:13:44 +09:00
Nick Cameron
75a13868da Block format control flow discriminant expressions and binops
Fixes #1450

Adds control_style option
2017-05-05 14:37:13 +12:00
topecongiro
ca0225730f Update tests 2017-05-05 10:22:20 +09:00
topecongiro
e7c6d34854 Use SeperatorTactic::Never for a single argument 2017-05-04 14:47:50 +09:00
topecongiro
b48f4e03b3 Add tests for issues which can be closed on master 2017-05-04 14:32:13 +09:00
Nick Cameron
8579c1db0e Merge pull request #1495 from topecongiro/poor-formatting/closure
Fix weird indentation inside closures
2017-05-04 17:15:58 +12:00
Sheng Hau
51815effbe Format macros in trait item position 2017-05-04 00:10:03 +08:00
topecongiro
6d14ac84a4 Update tests 2017-05-03 11:30:17 +09:00
Nick Cameron
59d66c3ae8 Merge pull request #1453 from topecongiro/bug/empty-struct-with-comment
Handle empty tuple struct def with comment properly
2017-05-02 13:49:15 +12:00
topecongiro
93dae1a34d Add test for empty tuple struct with comment 2017-05-02 10:21:39 +09:00
Seiichi Uchida
19599b9a01 Use block when arm exceeds max_width 2017-05-02 10:15:31 +09:00
Nick Cameron
b4794dbd9f Fixup tests 2017-05-02 11:42:38 +12:00
Nick Cameron
674d15e057 Merge pull request #1481 from regexident/system-error
Improve error message for missing source/target test file
2017-05-02 11:17:48 +12:00
Nick Cameron
5071c41cf8 Merge pull request #1471 from regexident/type_punctuation_density
Made `type_punctuation_density` apply too all `+` in types
2017-05-02 11:17:35 +12:00
Vincent Esche
42dbe482e3 Made type_punctuation_density apply too all + in types 2017-05-02 01:03:46 +02:00
Nick Cameron
4ad17b1efb Merge pull request #1482 from regexident/configs-tests
Add source/target tests for each config option
2017-05-02 11:00:09 +12:00
Nick Cameron
7fb288f0b3 Merge pull request #1487 from topecongiro/issue1470
Use block indent when visual indent exceeds max_width
2017-05-02 10:45:23 +12:00
Nick Cameron
c546f1b396 Merge pull request #1454 from topecongiro/match
Format nested mathces properly.
2017-05-02 10:40:31 +12:00
Vincent Esche
4385b8063d Improve error message for missing source/target test file 2017-05-01 23:34:00 +02:00
Vincent Esche
16b91be3e6 Add source/target tests for each config option 2017-05-01 15:58:04 +02:00
Seiichi Uchida
c7e9bcadaa Use block indent when visual indent exceeds max_width 2017-05-01 18:52:43 +09:00
topecongiro
9befcded8c Add tests for visual indent struct tuple 2017-05-01 15:57:08 +09:00
topecongiro
3d2cd681ae Use 'first_line_width' 2017-05-01 15:36:40 +09:00
Nick Cameron
5d9a35050d Remove where_indent option 2017-05-01 16:05:38 +12:00
Nick Cameron
fba5af2a7d Merge pull request #1469 from topecongiro/bug/chains
Remove a bug when calculating the length of the chain
2017-05-01 15:48:53 +12:00
Nick Cameron
6a19c93f2a Merge pull request #1461 from DarkEld3r/1447-line-length-in-chars
Fix line length calculation (should be in chars, not bytes)
2017-05-01 13:15:28 +12:00
topecongiro
02cf515be6 Format source codes 2017-04-24 16:50:11 +09:00
Stanislav Tkach
b53aeebbcf Fix line length calculation (should be in chars, not bytes) 2017-04-19 17:49:03 +03:00
topecongiro
0614e94d0d Format source codes 2017-04-15 18:42:45 +09:00
Nick Cameron
bdcb8d663e Merge pull request #1438 from topecongiro/poor-formatting/method-chains
Lookup the last element of 'subexpr_list' instead of the first one
2017-04-06 21:26:13 +12:00
Nick Cameron
ee9daade35 Fix a bug with overlong function calls 2017-04-06 21:17:22 +12:00
Nick Cameron
a7183766b9 Test fallout 2017-04-06 13:06:11 +12:00
topecongiro
8d22e85e48 Lookup the last element of 'subexpr_list' instead of the first one
Closes #1217, #1236, #1389 and #1434.
2017-04-06 09:26:25 +09:00
Nick Cameron
b3a4ba570e Merge pull request #1432 from topecongiro/parse-config
Print error and usage when decoding config file failed
2017-04-06 11:30:33 +12:00
Ryan1729
822b266a3d add tests that fail because of comma insertion
Signed-off-by: Ryan1729 <Ryan1729@gmail.com>
2017-04-03 16:15:11 -06:00
topecongiro
6af0968511 Change return type of 'from_toml' from 'Config' to 'Result<Config>'
Closes #1426.
2017-04-03 13:58:46 +09:00
topecongiro
34b90d8716 Check existence of pre comment explicitly
This commit fixes #1428.
2017-03-31 21:57:29 +09:00
Nick Cameron
4f226eb909 Merge pull request #1424 from topecongiro/long-struct
Split long fields in structs
2017-03-31 08:42:40 +13:00
topecongiro
3a1ffa7db7 Split long fields in structs
This commit splits long fields in structs.
Closes #1412.
2017-03-30 13:37:34 +09:00
Fabian Zaiser
6ecc18c7de Omit space before '\n' + comment (fixes #457) 2017-03-28 16:32:12 +02:00
Nick Cameron
5305bc8436 test fallout 2017-03-28 11:25:59 +13:00
Nick Cameron
a079b87e7c Use a char len heuristic rather than item count for chain_one_line_max 2017-03-28 11:12:15 +13:00
Nick Cameron
91bbe0ff8b Test fallout 2017-03-28 11:01:44 +13:00
Nick Cameron
8bca85c4b6 Support block indent for function calls
Uses the `fn_call_style` option.

Fixes #1358
2017-03-28 10:43:46 +13:00
Nick Cameron
f53d5dd90c Merge pull request #1409 from alobb/1408-empty-tuple-enum-decl
Prevent conversion of empty tuples to unit structs
2017-03-27 14:28:41 +13:00
Aaron Lobb
548de69d2d Prevent conversion of empty tuples to unit structs
Fixes #1408
2017-03-26 15:47:48 -07:00