Commit graph

1099 commits

Author SHA1 Message Date
Ingvar Stepanyan
5bd036fcac Optimise common => {{ macro pattern 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
9fca9073d9 Revert comments 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
1b9fd01343 Support compact macros 2.0 representation 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
9318b4d2cf Update some macro tests 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
c750442e04 Add macro_rules tests 2018-02-04 11:53:09 +00:00
Seiichi Uchida
f815858420 Use correct offset when unindenting code block
When using hard tabs, we should only remove '\t'.
2018-02-04 17:21:10 +09:00
Seiichi Uchida
9273a72420 Add tests for reorder_extern_crates 2018-02-04 12:07:51 +09:00
Seiichi Uchida
61b23a4293 Skip rewriting macro def with repeat 2018-02-04 08:52:50 +09:00
Nick Cameron
b7f01769f9
Merge branch 'master' into init-shorthand 2018-02-01 15:20:01 +13:00
Nick Cameron
918e79bb5a
Merge pull request #2380 from topecongiro/reorder-mods
[RFC] Reorder modules alphabetically
2018-02-01 15:18:34 +13:00
csmoe
28bb16a5a0 add a support for immovable generators 2018-01-30 22:14:33 +08:00
Seiichi Uchida
c9c346a89f Add 'use_field_init_shorthand' config option 2018-01-29 22:15:20 +09:00
Seiichi Uchida
56c6d73d82 Reorder modules
Add `reorder_modules` config option.

Two things we must keep in mind when reordering modules:
1. We should not reorder modules with attributes, as doing so could
   potentially break the code (e.g. `#[macro_use]`).
2. We should not reorder inline modules e.g. `mod foo { /* .. */ }`.
   We should only reorder module declarations e.g. `mod foo;`.

Some open questions:
1. Should we bring modules with `pub` in front of those without `pub`
   so that they stand out from others?
2. Instead of keeping modules with attributes in the same place,
   can we bring them in front of others? Is this safe?
2018-01-29 21:59:15 +09:00
Nick Cameron
4633786848
Merge pull request #2396 from topecongiro/issue-2389
Put attributes and enum variants on different lines
2018-01-29 10:36:26 +11:00
Seiichi Uchida
c60d865b98 Put attributes and enum variants on different lines 2018-01-26 16:20:00 +09:00
Seiichi Uchida
154bf8e1af Cargo fmt 2018-01-22 13:05:18 +09:00
Seiichi Uchida
fff59fe8d9 Add a test for field initialization shorthand 2018-01-22 13:03:48 +09:00
David Alber
69f27673df Extending spaces_around_ranges to ranges in match arm patterns 2018-01-21 16:50:17 -08:00
Seiichi Uchida
298f29a57d Do not panic when special macros have less args than expected 2018-01-18 00:50:16 +09:00
Nick Cameron
74a957e80f
Merge pull request #2357 from topecongiro/issue-2342
Put attributes and struct fields on different line by default
2018-01-12 17:32:55 +13:00
Nick Cameron
b356fc06f7
Merge pull request #2352 from topecongiro/issue-2337
Break after colon if static item does not fit in a single line
2018-01-12 17:31:12 +13:00
Nick Cameron
09e44b22f2
Merge pull request #2351 from topecongiro/issue-2256
Use correct BytePos when recovering comments on removed import
2018-01-12 17:30:27 +13:00
Seiichi Uchida
6e05ca87b0 Add a test for #2343 and update tests 2018-01-11 16:53:13 +09:00
Seiichi Uchida
279acda4c4 Remove same_line_attributes config option 2018-01-11 16:52:28 +09:00
Seiichi Uchida
eaab51db2e Break after colon if static item does not fit in a single line 2018-01-10 23:23:42 +09:00
Seiichi Uchida
1e7ff38c2d Add a test for #2256 2018-01-10 21:30:13 +09:00
Seiichi Uchida
60256b7f3d Add a test for #2324 2018-01-10 17:14:50 +09:00
Nick Cameron
91a332483b
Merge pull request #2316 from topecongiro/issue-2315
Remove trailing comma from extern items snippet before comparing
2018-01-04 17:49:47 +13:00
topecongiro
75cb236711 Compare extern crate items with its name instead of span
When we use span, bugs easily sneak in.
2018-01-04 12:49:37 +09:00
topecongiro
19d6a3c786 Put the opening brace of impl on the next line
We put the opening brace on the next line if the following conditions hold:

1. the result before '{' ends with comments or contains newline
2. the last line of the result before '{' is not extendable (i.e. consists of
   '>' and whitespaces).
2018-01-04 12:46:55 +09:00
topecongiro
a6d609b45e Add and update tests for #2320 and #2331 2018-01-04 12:46:05 +09:00
Nick Cameron
0f24bc0d44
Merge pull request #2330 from topecongiro/issue-2329
Issue 2329
2018-01-04 15:07:05 +13:00
Nick Cameron
9368de276c
Merge pull request #2327 from nrc/macro-defs
Some macros 2.0 macro defs
2018-01-04 14:02:37 +13:00
Nick Cameron
e52b383a57
Merge pull request #2306 from dtwood/assert-eq-on-one-line
Add assert_eq! to special-cased macros
2018-01-04 13:42:24 +13:00
Nick Cameron
aa758d671f Better handling of comments in macro defs 2018-01-03 20:36:52 +13:00
topecongiro
7c9686f349 Add a test for #2329 2018-01-02 13:04:26 +09:00
Nick Cameron
47d9ccd6a1 Tests for formatting macro 2.0 defs 2018-01-01 19:51:54 +13:00
David Alber
aa70bbe377 Moving test files to satisfy verify_config_test_names test 2017-12-28 10:29:48 -08:00
David Alber
6939e21f43 Moving config option tests to subdirectory
This was done by running the following.

```sh
for f in `find . -name "configs-*.rs"`; do
    topdir=`echo $f | cut -d/ -f2`;
    configname=`echo $f | cut -d/ -f3 | cut -d- -f2`;
    testname=`echo $f | cut -d/ -f3 | cut -d- -f3`;
    mkdir -p $topdir/configs/$configname;
    git mv $f $topdir/configs/$configname/$testname;
done
```
2017-12-28 10:29:48 -08:00
David Alber
8fb3342ca2 Renaming tests to match existing convention 2017-12-28 10:29:48 -08:00
David Alber
6a583399ff Renaming test to match existing convention 2017-12-28 10:29:48 -08:00
David Wood
39e2f43f91 Split assert_eq! if any arguments are not simple 2017-12-27 21:19:42 +00:00
Nick Cameron
9feb4988f2
Merge pull request #2310 from topecongiro/issue-2309
Do not give up rewriting struct field when attribute is long
2017-12-27 14:12:45 +13:00
Seiichi Uchida
27167cbbaa Format code block in comment
Closes #554.
Closes #1695.
2017-12-24 23:56:51 +09:00
Seiichi Uchida
f523ec58ab Do not give up rewriting struct field when attribute is long 2017-12-24 13:57:29 +09:00
David Wood
ef8b2efd13 Fix off-by-one error in assert_eq! line wrapping
If two really long conditions are checked for equality, they wouldn't be split
into multiple lines if the last condition is the one to push the line past the
width limit.

Fix the off-by-one error that caused this, and add a test-case for it.
2017-12-23 01:32:55 +00:00
David Wood
e343521276 Add assert_eq! to special-cased macros
Allows for this form of assert_eq! macros:
```rust
assert_eq!(
    left.id, right.id,
    "IDs are not equal: {:?} {:?}",
    left, right
);
```

Also allows for assert! macros to have the format arguments split across
multiple lines even if the assert condition is not simple:
```rust
assert!(
    result >= 42,
    "The result must be at least 42: {:?}",
    result, result.code, context
);
```
2017-12-23 01:06:17 +00:00
topecongiro
984ac100a4 Fix indent width bug when recovering comments
Using last_line_width() ignores the width of tab character ('\t').
2017-12-22 12:05:36 +09:00
Nick Cameron
723b938057
Merge pull request #2291 from topecongiro/issue-2289
Take the width of block's prefix into account only once
2017-12-22 12:58:02 +13:00
topecongiro
1d8619d49a Fix wrong indentation on type alias
Use rewrite_assign_rhs() when rewriting type alias.
2017-12-21 09:58:13 +09:00
topecongiro
366ff40ae7 Take the width of block's prefix into account only once 2017-12-20 15:44:11 +09:00
Seiichi Uchida
366621eb46 Add a test for #2123 and update tests 2017-12-17 15:23:17 +09:00
topecongiro
4f7cbc3aad Add tests for trait aliases 2017-12-15 13:47:32 +09:00
Nick Cameron
fc52a4d33f
Merge pull request #2173 from topecongiro/assignment-with-100-chars
Assignment whose lhs has 100 chars
2017-12-11 17:04:41 +13:00
Nick Cameron
644b60ad85
Merge pull request #2257 from topecongiro/error-on-line-overflow-strings
Add error_on_line_overflow_strings config option
2017-12-11 16:41:15 +13:00
Nick Cameron
3c08da3433
Merge pull request #2270 from topecongiro/issue-2260
Trim a trailing whitespace on empty line inside code block comment
2017-12-11 16:40:12 +13:00
Seiichi Uchida
e45c0c4815 Rename error_on_unformatted_comments_or_strings to error_on_unformatted 2017-12-11 11:48:17 +09:00
Seiichi Uchida
aea19d5e33 Combine error_on_line_overflow_comments/strings
1. Rename to error_on_unformatted_comments_or_strings
2. Set the option to false by default.
2017-12-11 11:48:17 +09:00
Seiichi Uchida
6d78bd5fdc Add a test for error_on_line_overflow_strings 2017-12-11 11:47:19 +09:00
Seiichi Uchida
a16a5b4c2e Add a test fot #2260 2017-12-11 11:40:59 +09:00
Nick Cameron
0c9b2b402e
Merge pull request #2267 from topecongiro/issue-2264
Remove block() and block_only() wherever possible
2017-12-11 09:02:16 +13:00
Nick Cameron
08022ec1a3
Merge pull request #2265 from topecongiro/issue-2262
Fix bugs related to closures
2017-12-11 09:00:56 +13:00
Nick Cameron
5da2d7be32
Merge pull request #2258 from topecongiro/issue-819
Format macro in pattern position
2017-12-11 08:54:02 +13:00
Seiichi Uchida
b749aa0699 Add a test fot #2264 2017-12-10 23:38:30 +09:00
Seiichi Uchida
4110c7b8c5 Add a test for #2262 2017-12-10 21:19:51 +09:00
Seiichi Uchida
0909ecbac7 Add tests for macro in pattern position 2017-12-10 00:21:49 +09:00
Seiichi Uchida
d4a569848e Add tests for nested imports 2017-12-09 16:45:20 +09:00
Seiichi Uchida
23fa0bc3ef
Merge pull request #2240 from davidalber/revisit-2219
Adding `print!` to the list of specially-formatted `format!`-like macros
2017-12-07 17:37:01 +09:00
David Alber
9a25458179 Adding tests for assert!, write!, and writeln! 2017-12-06 22:42:33 -08:00
Nick Cameron
b07e4339f0
Merge pull request #2221 from topecongiro/rfc/blank-lines
Keep vertical spaces between items or statements within range
2017-12-06 15:52:19 +13:00
David Alber
eb42956e84 Adding print! specially-formatted format!-like macros list
This commit corrects what appears to be an accidental inclusion of
`panic!` twice in the list resulting from the union of ffbe52e and
aeb3398.
2017-12-05 16:56:56 -08:00
David Alber
8c51122f54 Adding tests for all specially-formatted format!-like macros 2017-12-05 16:56:36 -08:00
Seiichi Uchida
9ed05410a3 Add more tests 2017-12-05 17:45:19 +09:00
Seiichi Uchida
2302e904e9 Add a test for 'blank_lines_lower_bound = 1' 2017-12-05 17:38:07 +09:00
Seiichi Uchida
39a304f529 Update tests 2017-12-05 17:16:04 +09:00
Nick Cameron
ae51f69de4
Merge pull request #2239 from topecongiro/issue-2157
Fix double indented chained closure
2017-12-05 16:56:52 +13:00
Seiichi Uchida
b45a69699a Add a test for #2157 2017-12-05 10:02:49 +09:00
Seiichi Uchida
289b5f4c21 Update a test 2017-12-05 08:44:26 +09:00
Seiichi Uchida
ab8129069a Add a test for #1209 2017-12-05 08:41:10 +09:00
topecongiro
e90f2e7e27 Update tests 2017-12-04 12:05:16 +09:00
topecongiro
16184d3e16 Cargo fmt and update a test 2017-12-03 11:34:18 +09:00
topecongiro
72cac8beae Add a test for special case macros like format! and assert! 2017-12-03 11:34:18 +09:00
Seiichi Uchida
c49526aa18 Add a test for #2197 2017-12-02 23:01:35 +09:00
Seiichi Uchida
89f27764ed Cargo fmt and update tests 2017-12-02 17:45:39 +09:00
Nick Cameron
8f6b6c28f7
Merge pull request #2210 from topecongiro/issue-2178
Combine a short callee and a single argument
2017-12-01 15:02:16 +13:00
Nick Cameron
db81a7f669
Merge pull request #2216 from topecongiro/issue-2214
Preserve trailing comma on array inside macro call
2017-12-01 12:18:38 +13:00
Nick Cameron
076bc2332f
Merge pull request #2213 from topecongiro/issue-2212
Format defualtness on specialized impl const
2017-12-01 12:17:10 +13:00
topecongiro
5aaa00a929 Add a test for #2214 2017-11-30 22:12:55 +09:00
topecongiro
9f67ad8212 Add a test for #2212 2017-11-30 19:37:53 +09:00
Seiichi Uchida
8116e3491d Cargo fmt & update a test 2017-11-30 18:07:10 +09:00
topecongiro
c3d6ae7abe Update a test 2017-11-30 15:00:20 +09:00
topecongiro
0f6b4977dd Add a test for #2178 2017-11-30 15:00:13 +09:00
Seiichi Uchida
9ea3e65df6 Update tests 2017-11-30 06:10:59 +09:00
Seiichi Uchida
35aa1dc992 Add a test for #2207 2017-11-30 06:10:50 +09:00
topecongiro
a6d94b9842 Update tests 2017-11-29 17:37:56 +09:00
topecongiro
4436508712 Fix a test target 2017-11-29 17:29:06 +09:00
topecongiro
4720462e67 Add a test for #2200 2017-11-29 12:34:09 +09:00
topecongiro
3d7d978fe8 Add a test for #2193 2017-11-27 20:53:54 +09:00
Nick Cameron
fcb48786c8
Merge pull request #2191 from topecongiro/issue-2190
Recover from failing to format variants even where there is no comment
2017-11-27 18:14:08 +13:00
Nick Cameron
f0af1d4818 Remove CompressedIfEmpty option from fn_args_density
It was identical to Tall
2017-11-27 17:49:55 +13:00
topecongiro
9ece82f9ea Add a test for #2190 2017-11-27 13:49:53 +09:00
Nick Cameron
677446e99d Merge fn_empty_single_line and impl_empty_single_line into empty_item_single_line 2017-11-27 17:46:09 +13:00
Nick Cameron
9a33255834 Rename wrap_match_arms to match_arm_blocks 2017-11-27 17:35:27 +13:00
Nick Cameron
8f4d85a9d7 Merge multiline_closure_forces_block and multiline_match_arm_forces_block into force_multiline_block 2017-11-27 17:03:54 +13:00
Nick Cameron
087f8b5854 Remove match_arm_forces_newline 2017-11-27 16:31:49 +13:00
Nick Cameron
0e1fa2c244 Remove indent_match_arms 2017-11-27 15:49:14 +13:00
Nick Cameron
86007e7d17 Remove where_density and where_layout options
There is a choice between block and visual indent for where clauses, plus the
single line option. I think these two are too fine-grained to be useful.
2017-11-24 21:08:24 +13:00
Nick Cameron
abfa4a1473
Merge pull request #2184 from topecongiro/issue-2179
Put rhs on the same line as lhs if putting rhs on next line exceeds max width
2017-11-24 20:19:12 +13:00
Nick Cameron
dd1fbca99a Replace various small width heuristics with a single option
Closes #1984
2017-11-24 20:17:06 +13:00
topecongiro
cb5c3a9914 Add a test for #2179 2017-11-24 12:04:00 +09:00
Nick Cameron
96886cd67f Fix a typo in the unstable options handling and address fallout 2017-11-24 15:41:27 +13:00
Nick Cameron
f891d04c87 Some tests I renamed in a previous commit and forgot to git add 2017-11-24 14:46:33 +13:00
Nick Cameron
45d4f7a2dd struct_lit_multiline_style -> struct_lit_single_line (and make it a bool) 2017-11-24 14:45:18 +13:00
Nick Cameron
20805acf42 Merge attributes_on_same_line_as_field and attributes_on_same_line_as_variant into same_line_attributes 2017-11-24 14:29:44 +13:00
Nick Cameron
d00c60df5c Remove chain_split_single_child option 2017-11-24 14:12:54 +13:00
Nick Cameron
4cb474b5ee Remove force_format_strings in favour of format_strings 2017-11-24 14:07:37 +13:00
Nick Cameron
8a7b6b8806 Remove match_pattern_separator_break_point in favour of binop_separator 2017-11-24 14:01:44 +13:00
Nick Cameron
179b3c59de Remove legacy option fn_args_paren_newline 2017-11-24 13:27:14 +13:00
Nick Cameron
4f65124422 Remove legacy option fn_return_indent 2017-11-24 13:19:36 +13:00
Nick Cameron
d0f12b8ec8 Remove unused option take_source_hints 2017-11-24 13:08:02 +13:00
topecongiro
5314426bc2 Update tests 2017-11-23 12:39:00 +09:00
topecongiro
334b410785 Add a test for #2111 2017-11-23 12:36:57 +09:00
topecongiro
c2804589a1 Add a test for assignment whose lhs is exactly 100 chars 2017-11-21 08:50:55 +09:00
topecongiro
44d81d9e0e Add a test for #2171 2017-11-20 16:38:15 +09:00
Nick Cameron
f987946078
Merge pull request #2161 from topecongiro/issue-1807
Implement RFC style for match pattern
2017-11-20 14:51:53 +13:00
topecongiro
bbf061511b Update a test 2017-11-18 15:46:01 +09:00
topecongiro
3de7a56267 Add a test for #2164 2017-11-18 15:32:10 +09:00
topecongiro
3bd1cc4fe0 Update a test for #1807 2017-11-16 17:43:06 +09:00
topecongiro
1c702aa252 Update tests 2017-11-16 17:43:06 +09:00
topecongiro
b1a6dd6b83 Cargo fmr & update tests
Note that we are forcing vertical layout when there are attributes on top of a
variant.
2017-11-16 16:07:15 +09:00
topecongiro
b3a3d5b164 Add a test for #1809 2017-11-16 16:01:50 +09:00
topecongiro
37b6855d9d Add a test for #2158 2017-11-16 11:26:12 +09:00
topecongiro
f9f4ef8177 Add a test for #1603 2017-11-15 15:44:27 +09:00
topecongiro
1dc9b927af Update tests 2017-11-15 12:22:50 +09:00
topecongiro
bf775785e0 Add a test for #2151 2017-11-15 12:22:50 +09:00
Nick Cameron
a90b76a731
Merge pull request #2153 from topecongiro/issue-2152
Return None when a literal exceeds budget
2017-11-15 15:43:03 +13:00
topecongiro
00318c400b Add a test for #2152 2017-11-15 10:36:42 +09:00
topecongiro
94e22bb334 Fix typos 2017-11-14 23:41:33 +09:00
topecongiro
575ae22a5f Update tests related to spaces with parens and brackets 2017-11-14 23:37:27 +09:00
topecongiro
15ded04f46 Update tests related to colon spacing 2017-11-14 23:25:10 +09:00
topecongiro
f8074b340d Combine fn_brace_style and item_brace_style 2017-11-14 10:47:02 +09:00
topecongiro
a770c0e345 Fix chains-visual test 2017-11-13 17:37:56 +09:00
topecongiro
664e030534 Update tests 2017-11-13 17:33:32 +09:00
topecongiro
6003eae6a3 Remove redundant options 2017-11-13 17:33:32 +09:00
topecongiro
0d721241f4 Change chain_indent to indent_style 2017-11-13 17:33:32 +09:00
topecongiro
5e639cacdb Change Legacy to Visual 2017-11-13 17:33:32 +09:00
topecongiro
18a513b0c2 Change Rfc to Block 2017-11-13 17:33:32 +09:00
topecongiro
f613c8fa02 Recover imports_indent 2017-11-13 17:33:32 +09:00
topecongiro
96f3c36c04 Replace '_indent' with 'indent_style' 2017-11-13 17:33:32 +09:00
Nick Cameron
8a27a2da62 Add a test for #1524 2017-11-13 16:51:28 +13:00