140 Commits

Author SHA1 Message Date
Marcus Klaas
a9814149c9 Align dots in chained expressions 2015-09-11 00:53:01 +02:00
Marcus Klaas
749a9689be Break chains that don't start with path expressions 2015-09-11 00:52:57 +02:00
Marcus Klaas
a53be86710 address mini offset bug in rewrite_match 2015-09-11 00:52:20 +02:00
Marcus Klaas
659c9b9037 Update indentation heuristics for single arg functions 2015-09-11 00:52:20 +02:00
Marcus Klaas
c680bb4030 Implement basic chain formatting 2015-09-11 00:52:16 +02:00
Sinh Pham
e47646b44b Small style fixes. 2015-09-09 07:56:56 -04:00
Marcus Klaas
582aa4f2fe Format closures' return types 2015-09-08 20:56:33 +02:00
Nick Cameron
db79a5aec5 Merge pull request #260 from cburgdorf/struct_lit_force_multiline
Implements struct_lit_force_multiline
2015-09-08 17:01:28 +12:00
Christoph Burgdorf
33c5776d30 Implements struct_lit_force_multiline
With struct_lit_force_multiline set to true
rustfmt won't ever mangle multiple struct properties
into one line.

Fixes #253
2015-09-08 01:25:44 +02:00
Marcus Klaas
f80dcbbd84 Split off binary search 2015-09-07 22:21:56 +02:00
Marcus Klaas
d05a41c773 Add failure mode to write_list 2015-09-07 20:35:25 +02:00
Marcus Klaas de Vries
072c54beba Merge pull request #265 from nrc/unsafe_one_line
Single line unsafe blocks
2015-09-06 22:44:06 +02:00
Nick Cameron
8750399ef4 Merge pull request #248 from sinhpham/unicode_string_lit
Unicode string lit
2015-09-07 08:01:06 +12:00
Nick Cameron
e0c197cab4 Single line unsafe blocks 2015-09-07 07:31:02 +12:00
Marcus Klaas
490821ef30 Work with spanned labels in break and continue 2015-09-05 14:00:16 +02:00
Sinh Pham
61f642f6f8 Support unicode in string literals. 2015-09-03 23:41:25 -04:00
Nick Cameron
183dac91a3 Fix a bug where struct lits nested in fn calls were over-indented 2015-09-02 15:36:17 +12:00
Nick Cameron
ce4d5aa39c Fix a bug with alignment in one-line match arms 2015-09-02 14:45:56 +12:00
Nick Cameron
a5f8b37eeb Format match expressions properly when they appear on an overflowing line. 2015-09-02 14:29:47 +12:00
Nick Cameron
fae93abbda Support struct-like layouts for fn args 2015-09-02 09:41:08 +12:00
Marcus Klaas
1ae2d417b8 Remove faulty shortcut in rewrite_string_lit
Rustfmt would leave the literal unchanged when it did not exceed the column limit in its original position, not considering its position after formatting.
2015-09-01 20:42:07 +02:00
Sinh Pham
55fe34a00f Format strings option https://github.com/nrc/rustfmt/issues/202 2015-09-01 08:14:52 -04:00
Marcus Klaas
0f4bf9b3ba Fix some potential arithmetic underflow issues
There have been many of this sort already. These were just bugs waiting to happen.
2015-08-31 19:30:00 +02:00
Marcus Klaas
a896d91ff6 Fix offset for unary operations
Fixes https://github.com/nrc/rustfmt/issues/227.
2015-08-31 19:15:40 +02:00
Josh Matthews
6cf74956b3 Avoid an integer underflow panic. Fixes #229. 2015-08-30 23:15:14 -04:00
cassiersg
2bb521a06a Merge pull request #207 from cassiersg/find-comments
Add a generic tool for searching comments in code
2015-08-28 14:34:25 +02:00
Gaëtan Cassiers
e5ea13da6e Add a generic tool for searching comments in code
This make a base for all functions searching for comments, or searching
code excluding comments, etc. These functions where too simple and
didn't handle complicated cases like nested comments or comment marks
inside string litterals ("/*").
2015-08-28 14:32:02 +02:00
Sinh Pham
145a90da05 Fix #201 2015-08-28 06:44:13 -04:00
Gaëtan Cassiers
5e445697ce Implement Rewrite for [ast::Attribute] 2015-08-27 22:29:07 +02:00
Marcus Klaas
d92dd3d915 Prevent nested if-else from being put on a single line.
This is done using a pretty terribad hack, introducing an extra function parameter and some code duplication. Unfortunately, there seem to be few alternatives.
2015-08-25 22:52:33 +02:00
Marcus Klaas
b7a71250f4 Implement single line if-else formatting 2015-08-25 22:09:46 +02:00
Marcus Klaas
120fd2426e Format assignment 2015-08-25 21:43:13 +02:00
Ivan Apachev
c7e6d0b54a Replace uses of x.len() == 0 by x.is_empty() #187 2015-08-25 01:07:48 +03:00
Léo Stefanesco
5047091f08 Don't format raw strings 2015-08-21 19:13:46 +02:00
Marcus Klaas
e0ae162ae1 Reduce code duplication for block indentation helpers 2015-08-21 12:57:17 +02:00
Marcus Klaas
c8fd23ca68 Refactor closure formatting routine 2015-08-20 23:05:41 +02:00
Marcus Klaas
5fcd313b08 Format closures 2015-08-19 23:15:56 +02:00
Nick Cameron
43ad7ad7a0 Re-jig binop formatting
and misc other fixes from the reviews.
2015-08-20 08:18:02 +12:00
Nick Cameron
81f2e449d7 Handle span error with continue
This should be properly addressed by #184, but requires a change to the rustc parser, so this patch just works around the issue.
2015-08-20 08:11:14 +12:00
Nick Cameron
ae1eec81af Rewrite match expressions (continued). 2015-08-20 08:11:14 +12:00
Nick Cameron
a43e2b5ae8 Formatting 2015-08-20 08:11:14 +12:00
Nick Cameron
d10629d8a5 Allow {} to remain. 2015-08-20 08:08:11 +12:00
Nick Cameron
dc2544712c Rewrite match expressions 2015-08-20 08:08:11 +12:00
Marcus Klaas
8e22a73cb7 Add option to override single configuration lines for tests 2015-08-19 21:51:03 +02:00
Marcus Klaas
4e0a8da447 Refactor itemize list so that it produces an iterator 2015-08-19 18:40:02 +02:00
Marcus Klaas
41bca58100 Format paths 2015-08-16 22:53:06 +02:00
Gaëtan Cassiers
0eab4bf430 Remove ChangeSet of FmtVisitor 2015-08-02 13:12:51 +02:00
Marcus Klaas
0f640b06dd Properly format unsafe blocks 2015-08-02 12:40:02 +02:00
Marcus Klaas
54a96355dd Phase out token::get_ident in favour of ToString
token::get_ident was removed in rust commit 00a5e66f818ad9d79cc4425f5564c7b07e3213a6
2015-07-31 13:10:19 +02:00
Gaëtan Cassiers
ff301efa4e Fix width computation in rewrite_binary_op
Operator width was counted twice.
2015-07-25 18:58:16 +02:00