topecongiro
b8f11a4e3c
Format source codes
2017-06-14 20:39:07 +09:00
topecongiro
c06d487712
Add offset wherever necessary
2017-06-14 20:37:54 +09:00
topecongiro
c4d84b44ba
Avoid overflow
2017-06-14 00:06:48 +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
Nick Cameron
1f512948a0
Reformat source code using new defaults
2017-06-13 14:41:49 +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
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
topecongiro
d269189f19
Use correct indent for return type when it goes multi line
2017-06-12 16:23:10 +09:00
topecongiro
62e9473d07
Update rewrite_trait_ref to return Option<String>
2017-06-12 08:53:19 +09:00
topecongiro
f135641cc8
Use multi line when type bounds does not fit in a single line
2017-06-11 23:26:49 +09:00
topecongiro
9b195ae228
Refactor format_impl
2017-06-11 14:32:44 +09:00
topecongiro
bd80077be8
Add format_trait_ref_then_update_result
2017-06-10 21:07:38 +09:00
topecongiro
88e522f921
Use multiline in generics rather than fail
2017-06-10 19:45:23 +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
727963afe4
Update syntex_syntax
...
Bases on commit to switch to libsyntax by @nrc
2017-06-06 07:31:47 +02: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
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
topecongiro
d7de5b7656
Allow comments after attributes on enum fields
2017-06-04 23:27:21 +09:00
topecongiro
dcc7f32152
Format source codes
2017-06-04 19:37:24 +09:00
topecongiro
a9f529cba4
Format source codes
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
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
9b7ba980cf
Use correct budget
2017-06-03 23:17:30 +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
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
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
10c7934700
Be precise with one_line_budget for fn_base
2017-05-25 22:55:11 +09:00
topecongiro
86856491bc
Format source codes
2017-05-25 16:08:08 +09:00
Nick Cameron
393ba27311
Remove dependency on Itertools
2017-05-25 16:23:07 +12: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
77a2e9858b
Format source codes
2017-05-23 11:37:33 +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
topecongiro
cfff3bd91e
Use multiline when signature does not fit single line
2017-05-17 16:31:09 +09:00
topecongiro
d7b6f1199f
Format source codes
2017-05-16 23:24:38 +09: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
762db5138e
Format source codes
2017-05-15 22:55:45 +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
e923df4146
Add indented and with_max_width
2017-05-08 07:24:12 +09:00
topecongiro
e7c6d34854
Use SeperatorTactic::Never for a single argument
2017-05-04 14:47:50 +09:00
topecongiro
f5da9d779f
Format source codes
2017-05-03 11:26:25 +09:00
topecongiro
93dae1a34d
Add test for empty tuple struct with comment
2017-05-02 10:21:39 +09:00
topecongiro
2e00c117e5
Handle empty tuple struct def properly
2017-05-02 10:21:39 +09:00
Vincent Esche
42dbe482e3
Made type_punctuation_density
apply too all +
in types
2017-05-02 01:03:46 +02:00
Nick Cameron
c546f1b396
Merge pull request #1454 from topecongiro/match
...
Format nested mathces properly.
2017-05-02 10:40:31 +12:00
topecongiro
9dc643a6ae
Remove TODO from 'format_tuple_struct'
2017-05-01 15:57:08 +09:00
topecongiro
68c5915176
Remove TODO from 'rewrite_generics'
2017-05-01 15:57:08 +09:00
topecongiro
02cf515be6
Format source codes
2017-04-24 16:50:11 +09:00
topecongiro
02c9ac93be
Prohibit long return val from 'rewrite_closure_block'
2017-04-17 23:17:17 +09: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
Nick Cameron
5305bc8436
test fallout
2017-03-28 11:25:59 +13:00
Nick Cameron
5fb1140688
fallout - source reformatting
2017-03-28 11:14:47 +13:00
Nick Cameron
e4efa22983
Source formatting fallout
2017-03-28 10:58:41 +13:00
Nick Cameron
488c0b9546
Test and source fallout
2017-03-22 09:25:26 +13:00
Nick Cameron
4bb31a7231
Block indenting for struct lit patterns
...
Now follows struct_lit_style (and most other struct_lit_ options).
Required a fair bit of refactoring and bug fixes.
Fixes #1311
2017-03-22 09:25:26 +13:00
Nick Cameron
d4c5d572c8
Unify fn_args_layout and fn_arg_indent
...
Closes #1390
2017-03-20 11:59:08 +13:00
Nick Cameron
21ff1d43ba
Unify a bunch of option types into IndentStyle
2017-03-20 11:46:39 +13:00
Nick Cameron
c986e895bb
Remove FnArgLayoutStyle::BlockAlways
2017-03-20 11:35:53 +13:00
Nick Cameron
ce7b0aacd0
Remove BlockIndentStyle::Inherit
2017-03-20 11:23:44 +13:00
Nick Cameron
0c93e7dacf
Merge branch 'master' of github.com:rust-lang-nursery/rustfmt
2017-03-13 11:43:12 +13:00
Nick Cameron
ed10bf9532
Trailing comma for functions with empty bodies
2017-03-13 11:42:41 +13:00
Nick Cameron
4df405a768
Line breaking around generics in tuple structs
2017-03-13 11:25:46 +13:00
C4K3
ab832fa4bb
config: Rename ideal_width -> comment_width ( #1370 )
...
Since the config option only affects comment widths, and the previous
name has led to some confusion (see #1321 , #1152 ).
2017-03-13 09:07:33 +13:00
Nick Cameron
d5478f7d45
Reformatting source code
2017-03-10 16:06:05 +13:00
Nick Cameron
22be93780c
block generics in traits
2017-03-10 16:04:08 +13:00
Nick Cameron
a1d94e545c
Attempt to fixup impls with long generics
2017-03-10 15:58:35 +13:00
Nick Cameron
c8af03f475
Block formatting for tuple structs
...
Follows the fn_args_layout option
2017-03-10 15:31:45 +13:00
Nick Cameron
7b901130cb
Insert a newline before block-formatted generics
...
Fixes #1359
2017-03-10 14:29:45 +13:00
Nick Cameron
4b60d94a99
Check we can put the where clause on one line when we think we can
...
Fixes #1362
2017-03-10 09:45:26 +13:00
Nick Cameron
70085fca84
Try harder to format function sigs
...
Fixes #1363
2017-03-10 09:26:14 +13:00
Nick Cameron
d107ca12b8
Use trailing commas if block formatting fn args
...
Fixes #1330
2017-03-09 14:47:29 +13:00
Nick Cameron
6025492245
Implement where_style Rfc
2017-03-09 14:21:20 +13:00
Nick Cameron
33b83ae7df
Formatting fallout
...
Also fixes a minor bug when we break a line after `if` and used to leave a trailing space
2017-03-07 09:50:41 +13:00
Nick Cameron
f2eac0513f
Fix trailing comma tests
2017-03-02 14:27:33 +13:00
Nick Cameron
248f2aba56
Merge branch 'master' of github.com:rust-lang-nursery/rustfmt
2017-03-02 14:27:02 +13:00
David Wickes
371ffa4710
Small reformat
2017-02-26 22:28:53 +00:00
David Wickes
094c8898e1
Fix for #1255
...
Default annotation incorrectly removed on associated types
Fixed by adding a specific function to perform formatting on `ImplItems`.
2017-02-26 22:28:21 +00:00
Nick Cameron
6a58d91239
Coalesce trailing comma options
2017-02-24 10:31:23 +13:00
Nick Cameron
a7612cc773
more fallout
2017-02-23 13:15:48 +13:00
Nick Cameron
d9d2423764
Tweak chain rules
2017-02-23 13:15:48 +13:00
Nick Cameron
9eb78a3333
Fallout
2017-02-23 13:15:48 +13:00
Nick Cameron
b35906dbce
WIP
2017-02-21 16:35:05 +13:00
Nick Cameron
428339fdc3
Refactor indent and width into Shape struct
2017-01-31 08:35:23 +13:00
Nick Cameron
6054f28bd2
Some debugging stuff
2017-01-27 09:14:26 +13:00
Nick Cameron
309fb37f23
Allow some unused fields
2017-01-27 07:42:34 +13:00
Nick Cameron
6747cd721c
Start factoring out an abstract Item
2017-01-27 07:37:09 +13:00
Nick Cameron
3d3b6784d1
Nits
2017-01-26 15:44:54 +13:00
Nick Cameron
0b1d78bae1
Try hard to format impl signatures
...
Fixes #1249
2017-01-17 13:08:36 +13:00
sinkuu
7e2fcc27e1
Fix #1258 ( #1266 )
...
* Fix #1258
* Add test
2017-01-09 16:11:12 +13:00
sinkuu
1358f1ac80
Fix #1259 ( #1263 )
...
* Use `Indent::block_indent` instead of adding `config.tab_spaces`
* Fix #1259 impl block closing brace placement
2017-01-04 09:20:02 +13:00
Erick Tryzelaar
e67ffcfb21
Update to the latest syntex module
...
One notable feature is this this adds support for the experimental
`let x = loop { ... break $expr; }` syntax. This also includes a
test for formatting all the break and continue variations.
2016-12-23 11:20:07 -08:00
Luke Clifton
6bf1382927
Indent open brace for impl when nested. ( #1227 )
...
* Indent open brace for impl when nested.
Fixes #1226
* Added test case for indented impl with brace on newline
2016-11-28 13:47:07 +13:00
Nick Cameron
d3eba76e4d
update Serde, etc.
...
Lots of changes to how closures work
2016-11-21 11:02:18 +13:00
Mikko Rantanen
636a828772
Add support for spaces_within_angle_brackets
...
Enabling the config adds spaces within type arguments: <>
2016-10-13 19:28:18 +03:00
Mikko Rantanen
7be202fa3c
Add support for spaces_within_parens config ( #1187 )
...
* Add support for spaces_within_parens config
* Changes based on review comments
2016-10-13 14:34:08 +13:00
Nick Cameron
3ff7e83457
Merge pull request #1156 from sinkuu/break_if_let
...
Prefer line break at `=`/`in`
2016-09-19 18:51:21 +12:00
sinkuu
114a3e287a
Fix self test
2016-09-19 11:48:56 +09:00
sinkuu
b6bffa6596
Prevent line breaking at =
or in
after trivial patterns
2016-09-17 13:03:14 +09:00
est31
efd3e5c091
Add three new options for spaces
2016-09-17 02:22:13 +02:00
Nick Cameron
4418fab4f2
Update to latest Syntex
...
+ Cargo update
+ 0.6.2 release
2016-09-16 15:28:02 +12:00
dawirstejeck
a5d7073bf5
Split impl at 'for' if a line break is needed ( #1148 )
...
* Split impl at 'for' if a line break is needed
* Fix formatting
* Improve comments
* Skip second try if there is no 'for'
* Restore intentional trailing whitespace
* Change test source to be incorrectly formatted
* Restore more missing trailing whitespace
* Remove too much whitespace...
Really should learn how to use git revert.
2016-09-06 17:11:56 +12:00
sinkuu
a3c63fdef9
Run clippy
2016-08-29 08:57:27 +09:00
sinkuu
130c593544
Fix #977
2016-08-28 16:40:03 +09:00
Nathan Ridge
899169a1d2
Apply space_before_type_annotation to struct ctors ( #1109 )
2016-08-05 01:30:53 -04:00
Nick Cameron
fe69e975e3
Merge pull request #1110 from HighCommander4/issue1109a
...
Add two new whitespace options (#1109 )
2016-08-04 10:58:32 +12:00
Nathan Ridge
4b999a99c0
Add two new whitespace options ( #1109 )
...
* An option to leave a space before the colon in a type annotation
* An option to leave a space before the colon in a trait or lifetime bound
2016-08-03 01:11:39 -04:00
dawirstejeck
22de7ced28
Fix overlong function signature ( #1089 )
...
* Fix issue-1049
* Add testcase suggested by pepyakin
* Fix last commit
* Handle special case
* Remove debugging println
* Fix grammar in comment
* Change word in comment
* Add test for long func without ret type
* Add one more test
2016-08-01 16:25:00 +12:00
dawirstejeck
e76cb6a907
Fix overlong impl ( #1091 )
...
* Fix issue-1048
* Take possible where-clause into account
* Move test to existing test set
* Fix wrong variable name
2016-07-26 17:34:11 +12:00
Jacob Clark
77edbb7def
Refactoring exsisting filter_maps to maps
2016-06-07 00:03:25 +01:00
Jacob Clark
2ea99869a7
Refactor string collects to itertools join
2016-06-06 22:30:40 +01:00
lqd
b6263735b1
Add support for the default
keyword ( #1025 )
...
Adds support for Defaultness on impl methods.
Fixes #945
2016-05-31 19:48:49 +02:00
Kamal Marhubi
bd10af127e
utils: Move codemap related utilities to a dedicated module
...
This commit adds a `codemap` module, and moves the `CodemapSpanUtils`
added in #857 to it. This is preparation for adding more `Codemap`
specific utilities.
Refs #434
2016-05-31 00:49:26 +02:00
Nick Cameron
5436977bd5
Merge pull request #1017 from marcusklaas/tweak-if-else
...
Format non-statement if-else expressions on a single line
2016-05-31 01:57:29 +12:00
Kamal Marhubi
120e1a0b51
deps: Update syntex_syntax to 0.33
...
This bump brings syntex_syntax support for `..` in tuple and tuple
struct patterns, which come from RFC 1492:
https://github.com/rust-lang/rfcs/blob/master/text/1492-dotdot-in-patterns.md
These new patterns are not properly handled in this PR; instead #1021
tracks supporting them.
Refs #1021
2016-05-30 14:53:04 +02:00
Marcus Klaas
98c0570a28
Format non-statement if-else expressions on a single line
2016-05-29 17:58:38 +02:00
Kamal Marhubi
66cac1f3e9
Handle pub(restricted) ( #1013 )
...
* Handle pub(restricted)
This commit properly handles pub(restricted) as introduced in RFC 1422
[0]. The syntax support was added in #971 , but they were not correctly
formatted.
[0] https://github.com/rust-lang/rfcs/blob/master/text/1422-pub-restricted.md
Fixes #970
* Drop #[inline] attribute on format_visibility
* Make newly non-failing functions return String
The change to `format_visibiilty` means that `format_header` and
`format_unit_struct` can no longer fail. Their return type is updated to
reflect that.
2016-05-28 00:58:25 +02:00
Nick Cameron
882ef8cc82
Fix off by 2 error in function sigs
...
Fixes #1000
This is a little conservative in some cases, but better than being wrong in others.
2016-05-27 15:05:15 -07:00
Nick Cameron
775de8a62b
Optionally put short struct variants on one line ( #997 )
...
Closes #418
2016-05-18 22:38:49 +02:00
Marcus Klaas
eae2921e14
Bootstrap it. Hard.
2016-05-12 21:50:43 +02:00
Kamal Marhubi
8309d1a74c
deps: Update syntex_syntax to 0.32.0
2016-05-05 16:39:34 -04:00
Kamal Marhubi
6285d53885
Handle new visibility types more gracefully
2016-05-02 01:05:23 -04:00
Kamal Marhubi
fd38acb86f
deps: Update syntex_syntax to 0.31.0
...
Most of the churn on this bump comes from the `Visibility` enum changing
from
pub enum Visibility {
Public,
Inherited,
}
to
pub enum Visibility {
Public,
Crate,
Restricted { path: P<Path>, id: NodeId },
Inherited,
}
which require taking `Visibility` by reference in most places. The new
variants are not handled at this point.
Refs #970
2016-05-01 23:06:58 -04:00
Nick Cameron
a9c3108c9c
Change defaults and update tests and source
...
New defaults are `Tabbed` for `chain_indent` and `chain_base_indent`, and `5` for `closure_block_indent_threshold`.
2016-04-22 19:18:48 +12:00
Nick Cameron
9761cf71d8
Tests
2016-04-22 18:53:39 +12:00
Marcus Klaas
f364a7ec43
Add option to force explicit extern ABI's
2016-04-18 18:39:40 +02:00
Marcus Klaas de Vries
320df84e96
Fix brace indentation for impl items ( #927 )
2016-04-14 20:42:38 +02:00
Nick Cameron
c6084cb29c
Fix the build
2016-04-12 11:04:33 +12:00
Nick Cameron
ce97bc08be
Merge pull request #896 from erikjohnston/fn_arg_one_line
...
Add fn_arg_one_line option
2016-04-12 10:44:01 +12:00
Nick Cameron
492b26cf04
Empty structs and struct lits ( #920 )
...
* Handle empty struct lits
Closes #835
* Don't crash on empty struct defs.
Not a great fix, but better than crashing.
2016-04-11 21:05:54 +02:00
Erik Johnston
6a82a5fb0e
Tidy up
2016-04-07 20:47:43 +01:00
Erik Johnston
4c9dd747bf
Fix long generic indent
2016-04-07 20:29:05 +01:00
Erik Johnston
4edc6f1a4e
Add variant to fn_args_layout
2016-04-07 20:01:16 +01:00
Erik Johnston
57847e451a
Add fn_arg_one_line option
...
If set, arguments will be kept on one line if they fit. Currently only
applies when `fn_args_layout` is set to `Block`.
This commit also fixes a bug where newlines were inserted inbetween
argument brackets when there were no arguments and `fn_args_layout` was
set to `Block`.
2016-04-02 00:25:35 +01:00
Erik Johnston
8219d15291
Fix incorrect indent with fn_args_layout: Block
...
The closing parenthesis for the arg list was written on a new line
without first applying the appropriate indent.
2016-04-01 23:01:49 +01:00
Marcus Klaas
03bf1ceeb9
Fix tuple destructuring in impl fns
2016-03-27 13:07:28 +02:00
Marcus Klaas de Vries
8fd95df54a
Merge pull request #868 from rust-lang-nursery/tuple-wide
...
Don't apply the function args heuristic to tuple lits.
2016-03-24 14:57:24 +01:00
Marcus Klaas de Vries
ca757183fe
Merge pull request #864 from Venti-/fn-density
...
Add option for vertical function argument list
2016-03-22 10:14:04 +01:00
Marcus Klaas de Vries
6f2bb908bb
Merge pull request #866 from rust-lang-nursery/empty-extern
...
Keep empty extern blocks on one line
2016-03-16 18:06:25 +01:00
Connor Brewster
0a665aaceb
Fixed nitpicks
...
Removed unneeded comment
Commented line wrapping conditions
Removed prefix param on `rewrite_associated_type`
Merged `rewrite_associated_static` into `rewrite_static`
Added extra tests
2016-03-15 14:08:12 -06:00
Connor Brewster
a0a5335634
Fixed span_after issue
2016-03-14 20:51:41 -06:00
Connor Brewster
7a6eb2197e
Merge branch 'master' of https://github.com/rust-lang-nursery/rustfmt into add-trait-formatting
2016-03-14 20:49:14 -06:00
Connor Brewster
2793b4090c
Added tests
2016-03-14 20:05:20 -06:00
Connor Brewster
7ba43ff06e
Finished implementing impl and trait type/const
2016-03-14 19:52:07 -06:00
Nick Cameron
9d8ce54428
Don't apply the function args heuristic to tuple lits.
...
Closes #450
Closes #510
2016-03-14 20:51:06 +13:00
Nick Cameron
96a2f25788
Keep empty extern blocks on one line
...
Closes #462
2016-03-14 18:55:55 +13:00
Nick Cameron
da65090050
Merge pull request #857 from kamalmarhubi/codemap-ext
...
utils: Add CodeMapExt extension trait for span_* methods
2016-03-14 18:00:51 +13:00
Ari Koivula
0c8640a84f
Fix last comment turning into block comment
...
This fixes the comment after the last argument in an argument list
being turned into a block comment when it's not necessary.
2016-03-14 02:02:52 +02:00
Kamal Marhubi
d82d9fc808
utils: Add CodeMapSpanUtils trait for span_* methods
...
This commit adds a CodeMapSpanUtils extension trait on CodeMap, and
moves some functions to methods there:
- span_after
- span_after_last
- span_before
This better reflects them being lookup methods on the codemap.
2016-03-13 18:14:07 -04:00
Connor Brewster
3163071c75
Updated to latest rustfmt
2016-03-12 11:09:27 -07:00
Connor Brewster
34651c4f78
Fixed formatting
2016-03-11 22:41:22 -07:00
Connor Brewster
d24c31f74c
Added support for associated type rewriting
2016-03-11 22:32:08 -07:00
Connor Brewster
9e583ce7a7
Added where clause formatting
2016-03-11 14:49:11 -07:00
Connor Brewster
35dfcc0078
Adding trait formatting
...
trait header formatting finished
generic formatting finished
added basic trait bounds formatting
2016-03-11 14:18:30 -07:00
Amanieu d'Antras
698027c4c4
Fix ordering of "const unsafe fn"
2016-03-09 02:44:01 -08:00
Kamal Marhubi
589dabda2f
deps: Update syntex_syntax to 0.29.1
2016-03-02 13:08:21 -05:00
Kamal Marhubi
14dbac5fd7
config: Use write_mode from config
...
This commit tidies up handling of `write_mode` by setting it in the
config at the start, and removing the `write_mode` parameter threaded
throughout the formatting process.
2016-02-08 22:52:44 -05:00
Jeremy Wazny
7297bc320f
Limit when we emit a trailing where clause comma.
2016-01-26 16:39:00 +11:00
Jeremy Wazny
d82d3b2cd1
Added where_trailing_comma option.
...
The default is 'false', since a lot of the time there's only a single
predicate.
2016-01-26 12:42:11 +11:00
Nick Cameron
f0ca7aec24
Fix an off-by-one error due to the comma in a struct lit field
...
Also allows splitting the field expression on a new line after the field name.
Fixes #698
2016-01-14 20:26:15 +13:00
Marcus Klaas de Vries
b99e8eda29
Merge pull request #757 from ConnorGBrewster/fix-#650
...
Fix for #650
2016-01-12 21:17:45 +01:00
Connor Brewster
d7a3256d40
If where is on the same line as the impl, { is put on the same line fixes #650
...
factored if clause into a separate function
2016-01-11 21:26:45 -07:00
Connor Brewster
749697d845
Changed is_block_empty to has_body
2016-01-11 14:47:56 -07:00
Connor Brewster
6b741a7194
Where clause is on same line as fn if fn is empty fix-#760
...
only applies if fn_empty_single_line is set to true
2016-01-10 22:06:06 -07:00
Manish Goregaokar
ffe9c9d834
Clippy rustfmt
2016-01-07 12:17:22 +05:30
Marcus Klaas
291aa1b228
Make fn argument formatting more resilient for complex self types
2015-12-27 14:25:37 +01:00
Marcus Klaas
2069abcca4
Reduce dependency on pprust
2015-12-25 20:59:46 +01:00
Marcus Klaas
954dd0869e
Preserve mutability for typed self arguments
2015-12-25 19:07:51 +01:00
Marcus Klaas
2636fed5f3
Don't panic on function return type rewrite failure
2015-12-12 15:41:10 +01:00
Nick Cameron
585b071aa1
Merge pull request #678 from marcusklaas/length-one-tuplez
...
Fixed named arguments in bare function types
2015-12-07 09:01:38 +13:00
Nick Cameron
f569144bbf
Merge pull request #666 from marcusklaas/matches-5000
...
Break function headers earlier
2015-12-07 08:07:23 +13:00
Marcus Klaas
97e4e7e5ba
Fixed named arguments in bare function types
2015-12-06 01:11:26 +01:00
Markus Westerlind
a6b0d475f4
Don't remove where clauses in type aliases
2015-12-02 20:11:17 +01:00
Markus Westerlind
ae9ad7b288
Fix formatting of type aliases where '=' is at or close to the max width
2015-12-02 20:11:10 +01:00
Marcus Klaas
76f303f369
Break function headers earlier
...
Closes rustfmt#295.
2015-12-01 22:09:37 +01:00
Markus Westerlind
17fd2d073b
Add a BraceStyle parameter to rewrite_where_clause
...
This allow it to exactly calculate if it needs to break the where clause into multiple lines
2015-12-01 19:51:49 +01:00
Markus Westerlind
052fddd4dd
Use the BraceStyle config to calculate the width for braces in where clasues
2015-11-28 13:59:14 +01:00
Markus Westerlind
937467c358
Fix where clauses not taking the width of the line into account
...
Fixes #630
2015-11-27 09:27:41 +01:00
Markus Westerlind
0021001a07
Use utils::last_line_width in rewrite_type_alias
2015-11-26 21:28:00 +01:00
Markus Westerlind
c61d6d4c3a
Format type aliases
...
Fixes #486
2015-11-26 21:04:49 +01:00
Nick Cameron
68bc387925
Merge pull request #655 from kyeah/impl-comments
...
Keep comments in empty impl body
2015-11-26 17:59:22 +13:00
Seo Sanghyeon
2b11d84119
Apply Clippy
2015-11-25 15:39:15 +09:00
Kevin Yeh
b6dc8a3f76
Keep comments in empty impl bodies
2015-11-24 12:55:32 -06:00
Nick Cameron
d405fdc236
Fix a bug with nested impls
2015-11-24 09:37:52 +13:00
Marcus Klaas de Vries
5a3f5bc1f6
Merge pull request #646 from rust-lang-nursery/mulit-file
...
Handle multiply-referenced files
2015-11-23 21:35:09 +01:00
Nick Cameron
40eb3ea857
Merge pull request #641 from marcusklaas/fix-doc-commentz
...
Correct doc comment indentation for struct fields
2015-11-23 13:58:19 +13:00
Nick Cameron
9cf8529e33
Implement formatting for impls
...
Fixes #614
2015-11-23 13:09:00 +13:00
Marcus Klaas
4b4dd170d8
Correct doc comment indentation for struct fields
...
Fix https://github.com/rust-lang-nursery/rustfmt/issues/572 .
2015-11-22 22:55:57 +01:00
Marcus Klaas
840012b5e0
Format bare function types
...
Fix https://github.com/rust-lang-nursery/rustfmt/issues/616 .
Fix https://github.com/rust-lang-nursery/rustfmt/issues/276 .
Close https://github.com/rust-lang-nursery/rustfmt/issues/350 .
2015-11-22 16:07:38 +01:00
Marcus Klaas
559f00ba99
Fix up indentation of function style paths
...
Fixes https://github.com/rust-lang-nursery/rustfmt/issues/105 .
2015-11-22 14:48:30 +01:00
Marcus Klaas
1b0ae00488
Extract fn rewrite methods from RewriteVisitor
2015-11-22 13:45:51 +01:00
Marcus Klaas
7b0cceafee
Force chains to adhere to restrictions
2015-11-20 21:09:34 +01:00
Marcus Klaas
6e1f77664d
Unwrap match arms that are simple blocks
2015-11-20 21:05:18 +01:00
Marcus Klaas
8f3a29d1a7
Blockify multiline match arms
2015-11-20 21:05:10 +01:00
Kevin Yeh
2e9b6dfab4
Combine rewrite_single_line_fn and rewrite_fn
2015-11-19 20:49:24 -06:00
Kevin Yeh
15ec5b2912
Fix empty body format, add fn_empty_single_line option, refactor block tests
2015-11-19 20:45:02 -06:00
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
Kevin Yeh
4d7de5a16e
Support single-line functions
...
By default, places functions with empty bodies on one line.
If the function has only one expression or statement that fits on one line, the 'fn_single_line' option can be used.
2015-11-19 14:23:56 -06:00
Nick Cameron
f09aa85798
Merge pull request #619 from SiegeLord/item_brace_style_1
...
Implement initial option for brace style for non-fn items.
2015-11-20 07:41:12 +13:00
Pavel Sountsov
1056006790
Properly follow the brace styles.
2015-11-18 22:34:14 -08:00
Nick Cameron
56a765ef05
Rustup
2015-11-16 14:16:46 +13:00
Pavel Sountsov
8658774ad2
Implement initial option for brace style for non-fn items.
2015-11-15 11:55:18 -08:00
Marcus Klaas
d32245a13d
Fix brace indentation after where clause
2015-11-13 14:31:20 +01:00
Nick Cameron
bcda2824a2
Format tuple structs better
...
closes #546
2015-11-09 19:00:04 +13:00
Florian Zeitz
2aa35f0f6d
Honor "enum_trailing_comma" option. Fixes #556
2015-11-03 23:57:31 +01:00
Marcus Klaas
d122ad5adc
Address some issues with multiline patterns in let statements
2015-10-24 13:13:15 +02:00
Marcus Klaas
e8447a8210
Fix large block comments
2015-10-19 23:06:36 +02:00
Marcus Klaas
11756d2ef8
Refactor enum formatting
2015-10-19 21:28:05 +02:00
Marcus Klaas de Vries
754925e132
Merge pull request #484 from marcusklaas/patternz
...
Format some patterns
2015-10-19 20:20:29 +02:00
Marcus Klaas
ca023ba9b7
Format some patterns
2015-10-19 20:15:36 +02:00
Marcus Klaas
7e0456b852
Format visibility for statics and consts
2015-10-19 20:08:03 +02:00
Marcus Klaas de Vries
8a9bbd9d7c
Merge pull request #487 from marcusklaas/konsts-n-statix
...
Format constants and static variables
2015-10-18 23:03:01 +02:00
Marcus Klaas
3ce425c9ed
Factor out common item indentation idiom
2015-10-18 22:59:39 +02:00
Marcus Klaas
8e2a910021
Fix indentation for function arguments
2015-10-18 22:22:41 +02:00
Marcus Klaas
1a7d39041e
Format constants and static variables
2015-10-18 21:36:26 +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
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
5ca9381d74
Adjust for unified enum variants and structs
2015-10-15 20:37:36 +02:00
Marcus Klaas
b768d27f03
Format variadic arguments
2015-10-11 20:57:44 +02:00
Nick Cameron
aed558fce4
Handle multi-line return types and multi-line tuples
...
Closes #409
2015-10-10 14:55:31 +13:00
mwiczer
5162282b60
Support pre- and post-comments for enums
...
Use lists to format enum variants rather than special formatting.
Add tests for enums mostly around block comments.
2015-10-08 17:22:57 -04: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
84718b5b90
Format rustfmt's own indices
2015-10-02 11:48:52 +02:00
Nick Cameron
840af4f84d
Option for putting the where clause on the same line as the function if the body is empty.
2015-09-28 08:46:05 +13:00
Nick Cameron
9139a8040c
Merge pull request #379 from marcusklaas/enum-quik-fix
...
Fix variant name duplication on rewrite failure
2015-09-28 07:51:09 +13:00
Marcus Klaas
a673fef844
Fix variant name duplication on rewrite failure
2015-09-27 17:23:37 +02:00
Marcus Klaas de Vries
0f485aabd6
Merge pull request #374 from nrc/fix-fn
...
Use max width for function decls, not ideal width
2015-09-27 14:52:08 +02:00
Nick Cameron
bc59f83f02
Use max width for function decls, etc.
...
We were using ideal width + leeway before. This means we can remove leeway from the config. We could remove ideal_width too, but I want to use it for comments.
2015-09-27 19:34:35 +13:00