Marcus Klaas
b039e3a8c3
Force semicolons after break/continue/return. Remove after blocks.
2015-10-15 19:55:42 +02:00
Marcus Klaas
dba08bf898
Indent uncontinued chains to block level
2015-10-14 19:41:29 +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
Marcus Klaas
b768d27f03
Format variadic arguments
2015-10-11 20:57:44 +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
Nick Cameron
aed558fce4
Handle multi-line return types and multi-line tuples
...
Closes #409
2015-10-10 14:55:31 +13:00
Sinh Pham
f075fd01ab
Fix https://github.com/nrc/rustfmt/issues/430
2015-10-08 22:49:16 -07:00
Nick Cameron
3ca8d3677a
Merge pull request #429 from marcusklaas/method-calls2
...
Try "overflowing" the final function argument when it's a closure
2015-10-09 12:27:37 +13: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
e7a6795509
Merge pull request #420 from mwiczer/Issue270
...
Fix https://github.com/nrc/rustfmt/issues/270
2015-10-08 23:38:04 +02: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
8daf4c3a31
Prevent panics on list-like macro uses with trailing commas
2015-10-08 22:04:17 +02:00
Marcus Klaas de Vries
915f27f177
Merge pull request #423 from nrc/atrib_bug
...
Format inner and outer attributes separately.
2015-10-08 19:51:30 +02:00
Jonas Schievink
e68cd08935
Fix typos in config descriptions
2015-10-08 16:13:10 +02:00
Nick Cameron
6600cd341a
Format inner and outer attributes separately.
...
Actually just skips inner attributes, because its a pain to track them, and lets missed spans handle them.
Closes #413
2015-10-08 17:20:19 +13: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 de Vries
7ea589d7b4
Merge pull request #403 from marcusklaas/casts
...
Format casts, indices and repeated elements
2015-10-05 19:26:14 +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 de Vries
251af6e161
Merge pull request #398 from sezna/master
...
Fix https://github.com/nrc/rustfmt/issues/389
2015-10-02 21:15:10 +02:00
Alex
c726bcae80
infinite while loop fixed, redundancy removed
2015-10-02 11:13:07 -05:00
sezna
2f7acf00e5
Added punctuation preference
...
Create test.rs
Delete test.rs
Fixed compile error.
Trying a possible fix on an arithmetic overflow
another try at the test failure...
passed all tests.
Added tests and cleaned up logic as per nrc's critiques
Delete string.rs.old
Delete string.rs.bk
Made changes as per nrc's requests.
Update string_punctuation.rs
Update string_punctuation.rs
fixed logical redundancy
2015-10-02 08:37:21 -05: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 de Vries
fff0be2f82
Merge pull request #402 from tikue/master
...
Fix 1-tuple regression.
2015-10-02 08:44:21 +02:00
Marcus Klaas de Vries
63860bb777
Merge pull request #378 from sinhpham/fix_376
...
Fix https://github.com/nrc/rustfmt/issues/376
2015-10-02 08:42:43 +02:00
Tim Kuehn
6c6e7194c2
Fix 1-tuple regression.
...
Add test to prevent future regressions.
2015-10-01 11:06:49 -07:00
Sinh Pham
11ed3c81d5
Fix https://github.com/nrc/rustfmt/issues/376
2015-09-30 23:43:56 -04:00
Marcus Klaas de Vries
7b40bfa8d5
Merge pull request #380 from sinhpham/fix_377
...
Fix https://github.com/nrc/rustfmt/issues/377
2015-09-29 19:40:24 +02:00
Scyptnex
00b314618d
Refactoring configuration
2015-09-29 09:38:19 +10:00
Marcus Klaas de Vries
10eb21d020
Merge pull request #384 from nrc/where-empty
...
Option for putting the where clause on the same line as the function …
2015-09-28 19:43:25 +02:00
Sinh Pham
220ecdaf71
Fix https://github.com/nrc/rustfmt/issues/377
2015-09-27 17:03:48 -04:00
Marcus Klaas
30aefa6dc7
Prevent arithmetic overflow handling match arm comments
2015-09-27 22:11:17 +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
431e8d9d2f
Remove a few unchecked subtractions, uses of ty_to_string
2015-09-27 17:56:38 +02: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
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
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
Nick Cameron
224eecce50
Minor refactoring in compute_budgets_for_args
2015-09-27 19:25:04 +13:00
Nick Cameron
dad4626517
Merge pull request #368 from nrc/struct-wide
...
Use a width heuristic for struct lits
2015-09-27 10:50:50 +13: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
617eed353c
Changes to rustfmt source
2015-09-26 18:29:48 +12:00
Nick Cameron
b894dd8abf
Use a width heuristic for struct lits.
...
Closes #123
2015-09-26 18:25:41 +12:00
Nick Cameron
b2e7da0aa0
Format imports with aliases.
...
Closes #366
2015-09-26 18:12:25 +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
ebf64ca35d
Heuristic max width for function calls
2015-09-26 13:54:22 +12:00
Nick Cameron
e161de0daa
Merge pull request #352 from nrc/ty_parens_fix
...
Formatting of some types
2015-09-26 13:50:00 +12:00
Nick Cameron
92fbb80097
Formatting of some types
...
Closes #341
2015-09-26 13:48:02 +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
Robin Gloster
5e2633b742
adapt to rust sytax::ast::Mac changes
2015-09-23 18:31:31 +00:00
Nick Cameron
5e18b03bb9
Merge pull request #345 from Manishearth/fix-match
...
Handle comments in match better (fixes #344 )
2015-09-22 17:00:18 +12:00
Manish Goregaokar
106f7251fb
Add tests, reformat expr
2015-09-22 09:35:50 +05:30
Marcus Klaas
71faa8984d
Format foreign functions and statics
2015-09-21 20:02:45 +02:00
Marcus Klaas de Vries
fa67e0359a
Merge pull request #334 from marcusklaas/sparse-mods
...
Place the closing brace of an inline mod on a new line
2015-09-21 19:42:36 +02:00
Manish Goregaokar
abdb693922
Handle comments in match better ( fixes #344 )
2015-09-21 17:48:35 +05:30
Marcus Klaas
5ee6304d8d
Fix struct overflows
2015-09-20 18:45:25 +02:00
Sebastian Ullrich
9bd502ad54
Fix negative overflow and missing '..' on struct lit base exprs
2015-09-20 15:47:21 +02:00
Marcus Klaas
f8e74bfa2c
Place the closing brace of an inline mod on a new line
2015-09-20 14:22:12 +02:00
Pavel Sountsov
01bdcd0014
Remove unnecessary config parameter from format_missing_with_indent.
2015-09-19 10:44:28 -07:00
Pavel Sountsov
620650219e
Use the block_indent inside visit_expr.
...
This seems to pass all the tests and greatly improves the formatting output
when using hard tabs.
2015-09-19 10:36:46 -07:00
Pavel Sountsov
03e1b27826
Add Indent::none(), remove make_indent.
2015-09-19 10:36:45 -07:00
Pavel Sountsov
d4108a3029
Initial implementation of hard tab indentation.
2015-09-19 10:36:45 -07:00
Sebastian Ullrich
3da7adbc3f
rustc update: Remove variant visibility
...
https://github.com/rust-lang/rust/pull/28440
2015-09-19 17:46:25 +02:00
Marcus Klaas
e72d488281
Refactor test code
...
No longer use callbacks or thread::catch_panic; reduce stdout spew; guard against rustfmt breaking the column limit.
2015-09-18 22:34:46 +02:00
Marcus Klaas
110f7206e6
Split formatting function from side effects
...
This makes rustfmt more usable as a library.
2015-09-18 22:31:33 +02:00
cassiersg
9c5dc29416
Merge pull request #314 from alobb/configDocumentation
...
Fixed https://github.com/nrc/rustfmt/issues/291
2015-09-17 23:13:25 +02:00
Marcus Klaas
f751356910
Format macro invocations
2015-09-16 20:26:14 +02:00
Aaron Lobb
07f7926bc2
Added help string for chains_overflow_last config parameter
2015-09-15 21:15:46 -07:00
Nick Cameron
e4cca21a10
Preserve unsafe blocks in closures
...
Fixes #321
2015-09-15 17:47:18 +12:00
Nick Cameron
a29023a191
Remove a few unnecessary rustfmt_skip
s
2015-09-15 11:46:27 +12:00
Aaron Lobb
d773580715
Changed ConfigType trait to only return a string of variants, rather than a vec
2015-09-14 13:43:55 -07:00
Aaron Lobb
cd9e9b5db0
Merged config imports
2015-09-14 13:06:09 -07:00
Aaron Lobb
8b808de6ff
Fixed https://github.com/nrc/rustfmt/issues/291 ; added output to --help runtime option with possible config values
2015-09-14 00:29:15 -07:00
Nick Cameron
4738d284f2
Merge pull request #309 from marcusklaas/array-literals
...
Format array literals
2015-09-13 09:20:37 +12:00
Marcus Klaas
ffa7e8d599
Prevent generation of bogus comment in some function calls
...
This would happen when the callee contained parentheses.
2015-09-12 14:31:51 +02:00
Marcus Klaas
7deee6daf5
Format array literals
2015-09-12 00:06:17 +02:00
Marcus Klaas
623d6c972a
Rewrite types in function arguments
2015-09-11 12:32:34 +02:00
Marcus Klaas
7f576b0602
General cleanup after rebase
2015-09-11 00:53:21 +02:00
Marcus Klaas
03c660633f
Refine chain breaking heuristics
...
Don't make a single line chain when it is was multi line in the source; allow overflow of the last chain element onto the next lines without breaking the chain.
2015-09-11 00:53:01 +02:00
Marcus Klaas
48d17f54d3
Rebase onto master
2015-09-11 00:53:01 +02:00
Marcus Klaas
a9814149c9
Align dots in chained expressions
2015-09-11 00:53:01 +02:00
Marcus Klaas
8e471ece31
Add some tests for match blocks
2015-09-11 00:53:01 +02:00
Marcus Klaas
abe8e7de99
Add tests for chain 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
e7a5f9327e
Add diff write mode https://github.com/nrc/rustfmt/issues/261
2015-09-10 18:30:07 -04: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 de Vries
156263a3c4
Merge pull request #251 from marcusklaas/rewrite-list
...
Add failure mode to `write_list`
2015-09-07 22:23:33 +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
Sinh Pham
94a26f3c9c
Fix https://github.com/nrc/rustfmt/issues/278
2015-09-07 00:30:46 -04:00
Marcus Klaas
c3cb348169
Fix qself rewrites without explicit casts
2015-09-06 23:18:27 +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
Nick Cameron
c838b00d54
Merge pull request #257 from cburgdorf/partial_config
...
Allow partial rustfmt.toml
2015-09-05 10:11:50 +12:00
Christoph Burgdorf
14a94f0bcd
Allow partial rustfmt.toml
...
With this change one can use a config file
that only specifies a subset of config keys
to overwrite. E.g. a config file that looks like this
struct_trailing_comma = "Never"
struct_lit_trailing_comma = "Never"
Fixes #255
2015-09-05 00:09:26 +02:00
Nick Cameron
398416be45
Merge pull request #252 from cburgdorf/improve_help
...
fix outdated help text
2015-09-05 09:54:11 +12:00
Andre Bogus
d6c652e33c
code improvements suggested by clippy
2015-09-04 23:39:33 +02:00
Christoph Burgdorf
56183ce0e9
fix outdated help text
2015-09-04 21:28:37 +02:00
Nick Cameron
fb9e051fd8
Format <foo + 'bar> nicely
2015-09-04 17:04:54 +12: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
97e92b35cc
Preserve some whitespace between struct fields etc.
2015-09-02 14:11:19 +12:00
Nick Cameron
fae93abbda
Support struct-like layouts for fn args
2015-09-02 09:41:08 +12:00
Nick Cameron
f81485d9d6
Rename fn_args_layout to fn_args_density
2015-09-02 08:56:37 +12:00
Nick Cameron
6ca2756a82
Merge pull request #238 from nrc/fn-decl
...
Customisation of function decls
2015-09-02 08:00:28 +12:00
Nick Cameron
8d81aa1991
Support where clauses on the same line as the function decl where it all fits on one line.
2015-09-02 07:59:54 +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
Marcus Klaas de Vries
81c8c020a8
Merge pull request #239 from sinhpham/format_strings_option
...
Format strings option https://github.com/nrc/rustfmt/issues/202
2015-09-01 20:34:22 +02:00
Marcus Klaas
85ddf35385
Rustup
...
Fix breakage caused by rust commit 2076cdd
.
2015-09-01 20:28:38 +02:00
Sinh Pham
55fe34a00f
Format strings option https://github.com/nrc/rustfmt/issues/202
2015-09-01 08:14:52 -04:00
Nick Cameron
6216dce14e
Support where clause predicates at different indentations
2015-09-01 19:04:41 +12:00
Nick Cameron
02a01350ff
Support where predicates on the same line
2015-09-01 18:53:16 +12:00
Nick Cameron
6f3c329500
Support non-indented where clauses
2015-09-01 18:38:12 +12:00
Nick Cameron
fc2fb8be43
Support different indent styles for generics
2015-09-01 18:20:17 +12:00
Nick Cameron
0413c47a09
Support different tabbing of function args
...
(Although, frankly anything other than visual is deeply wrong).
2015-09-01 17:22:00 +12:00
Nick Cameron
89cda8d43a
Option to pack fn args on fewer lines
2015-09-01 17:06:41 +12:00
Nick Cameron
4b3262f514
Add a test module to comments
2015-09-01 15:39:37 +12: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
b59ab9c13f
Merge pull request #214 from crumblingstatue/clean_exit
...
Only exit after running all destructors and flushing stdout
2015-08-29 10:36:50 +02:00
Mika Attila
1f974fca01
Simplify match expression
2015-08-28 23:51:26 +02: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
Mika Attila
ce25165450
Don't pass --write-mode argument to rustc
...
Fixes regression introduced by
660f41865b
2015-08-28 13:12:27 +02:00
Sinh Pham
145a90da05
Fix #201
2015-08-28 06:44:13 -04:00
Mika Attila
660f41865b
Only exit after running all destructors and flushing stdout
2015-08-28 10:39:58 +02:00
Gaëtan Cassiers
5e445697ce
Implement Rewrite for [ast::Attribute]
2015-08-27 22:29:07 +02:00
Alex HotShot Newman
39538a0c77
Fix usage of the tool. Provide -h and --help
2015-08-26 15:07:01 -07:00
Simon Bernier St-Pierre
99b0aa95f2
Delete src/default.toml file
2015-08-26 14:03:11 -04:00
Simon Bernier St-Pierre
9ead47151e
Add project-specific configuration file support
2015-08-25 19:05:30 -04:00
Simon Bernier St-Pierre
6adb6a1d1a
Fix build on nightly
...
https://github.com/rust-lang/rust/pull/27857
2015-08-25 17:37:48 -04: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
Gaëtan Cassiers
76ea7e3b64
Fix #190 for submodules
2015-08-24 22:01:01 +02:00
cassiersg
cf046b734c
Merge pull request #200 from sinhpham/master
...
Fix https://github.com/nrc/rustfmt/issues/190
2015-08-24 19:06:02 +02:00
Sinh Pham
49cae9c485
Fix https://github.com/nrc/rustfmt/issues/190
2015-08-23 08:37:43 -04:00
Nick Cameron
8319e33573
Merge pull request #198 from marcusklaas/parameterized-paths-matter
...
Fix bug in path formatting
2015-08-23 19:52:39 +12:00
Léo Stefanesco
5047091f08
Don't format raw strings
2015-08-21 19:13:46 +02:00
Marcus Klaas
150c333e6c
Fix bug in path formatting
2015-08-21 16:28:32 +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
df0fd0e119
reformatting/rebasing
2015-08-20 08:11:14 +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 de Vries
2ef0b17955
Merge pull request #176 from marcusklaas/no-backup
...
Add an option to forgo backups
2015-08-19 21:34:07 +02:00
Marcus Klaas
10a80bb8be
Add an option to forgo backups
2015-08-19 21:31:27 +02:00
Marcus Klaas
4e0a8da447
Refactor itemize list so that it produces an iterator
2015-08-19 18:40:02 +02:00
Alex Newman
2f4ef7dd1e
Provide information about default.toml
2015-08-18 11:35:18 -07:00
Marcus Klaas
41bca58100
Format paths
2015-08-16 22:53:06 +02:00
Marcus Klaas
82b27fc4ab
Correctly format typed self in function arguments
2015-08-14 11:56:27 +02:00
Gaëtan Cassiers
5a29d2f081
Fix nits for filemap
2015-08-02 14:49:35 +02:00
Gaëtan Cassiers
5b5927996f
Kill ChangeSet and replace remaining part by FileMap
...
Also fix style issues
Cargo update to get fixes of strings.rs (was cause of a misformatted
function call).
2015-08-02 13:33:01 +02:00
Gaëtan Cassiers
0eab4bf430
Remove ChangeSet of FmtVisitor
2015-08-02 13:12:51 +02:00
Gaëtan Cassiers
0e10329dc7
Separate modules and files listing of reformatting
...
As suggested in #141
Closes #156
2015-08-02 13:07:27 +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 00a5e66f81
2015-07-31 13:10:19 +02:00
Marcus Klaas
397d0d3d72
Format simple imports
2015-07-25 23:17:56 +02:00
cassiersg
92b3f69934
Add a helper method to format imports
2015-07-25 19:00:38 +02:00
cassiersg
5168d7458a
Indent fix
2015-07-25 19:00:38 +02:00
Gaëtan Cassiers
30b16bc474
Move 'use' to Rewrite
...
Implements Rewrite for ViewPath
Behavior change: always use max_width instead of ideal_width for use
list rewrite. I think it looks better, was also suggested by @nrc in
https://github.com/nrc/rustfmt/issues/82#issuecomment-105314265
2015-07-25 19:00:38 +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
Nick Cameron
8461e8a0a8
Merge pull request #147 from marcusklaas/even-more-expr
...
Format if expressions & loops
2015-07-25 09:51:59 +12:00
Nick Cameron
4aa24f5962
Merge pull request #158 from marcusklaas/modules
...
Use new module code from libsyntax
2015-07-25 09:48:58 +12:00
Marcus Klaas
3aa03dcc25
Use new module code from libsyntax
2015-07-24 19:25:01 +02:00
Marcus Klaas
c4101de53d
Refactor some things; add extra tests.
2015-07-24 19:00:14 +02:00
Marcus Klaas
d7fe47d858
Preserve box syntax
2015-07-23 23:08:41 +02:00
Marcus Klaas
d13fc2289a
Fix underflow bug in rewrite_call
...
Fixes https://github.com/nrc/rustfmt/issues/148 .
Now properly propagates the rewrite failure instead of panicking. Added regression test from servo code. This example will be properly rewritten when https://github.com/nrc/rustfmt/issues/17 is addressed.
2015-07-22 23:43:24 +02:00
Nick Cameron
c10c732425
Simplify CompilerCalls impl
2015-07-23 08:07:57 +12:00
Marcus Klaas
500fb78a33
Format unnamed function arguments
2015-07-20 20:07:54 +02:00
Marcus Klaas
2fa6220f57
Format all the loops!
2015-07-19 23:43:32 +02:00
Marcus Klaas
2fda8dd883
Format if-let-else expressions
2015-07-19 23:43:03 +02:00
Marcus Klaas
b161815fe0
Format if-else expressions
2015-07-19 23:42:54 +02:00
Marcus Klaas
e47e91013e
Format while loops, including labels
2015-07-18 12:25:41 +02:00
Nick Cameron
979d0c9756
Resolve some warnings
2015-07-17 18:26:10 +12:00
Nick Cameron
c3375078e5
Merge pull request #137 from nrc/struct-lit-opt
...
Options for formatting struct literals
2015-07-17 06:57:01 +12:00
Nick Cameron
f2bcee9d87
Tidy up some overrunning lines
2015-07-16 14:23:48 +12:00
Nick Cameron
9ab1587a98
Don't apologise if its not our fault in warnings
2015-07-16 14:17:07 +12:00
Nick Cameron
a32b0e7627
Fix some bugs
2015-07-16 14:05:10 +12:00
Nick Cameron
018fa85453
Reformat code to new struct lit style
2015-07-16 14:05:10 +12:00
Nick Cameron
7518f68861
Add an option to format struct lits with either block or visual indent
2015-07-16 14:05:05 +12:00
Nick Cameron
e4a6f96d70
Merge pull request #128 from marcusklaas/subexpr
...
Format loops
2015-07-16 10:08:36 +12:00
Marcus Klaas
b473c2bd2a
Format loops
2015-07-15 23:33:01 +02:00
Gaëtan Cassiers
b93b64381f
Fix bug in rewrite_tup_lit
...
Wasn't using all width available when the lenght is more than 1.
2015-07-15 00:38:54 +02:00
Gaëtan Cassiers
990a123e1c
Run rustfmt on the code
2015-07-03 11:13:28 +02:00
Gaëtan Cassiers
3de366d282
Format modules into separate files
2015-07-03 11:12:21 +02:00
Gaëtan Cassiers
83290f15ad
Add comma after struct-like enum variant
...
This is mandatory.
2015-07-03 10:30:42 +02:00
Gaëtan Cassiers
fc4483748c
Fix fn decl rewriting in case of generics
...
An opening paren in generics caused a false-positive detection of args
beginning. The result was the creation of comments with some code into
it.
2015-07-03 10:30:42 +02:00
Gaëtan Cassiers
163fbf62ee
Fix bugs in width computation
2015-07-03 02:55:43 +02:00
Marcus Klaas
2d4b4b856a
Format expressions with binary and unary operators
2015-07-02 22:44:55 +02:00
Marcus Klaas
482f200b0b
Update import list formatting
...
Include comments and sort items alphabetically.
2015-06-26 03:43:12 +02:00
Marcus Klaas
28f7bd4205
Fixup comment wrapping in lists
2015-06-24 21:14:08 +02:00
Marcus Klaas
9f3ab0b5fe
Format comments in struct literals
2015-06-24 01:11:29 +02:00
Marcus Klaas
0ef5db9496
Format tuple-like structs
2015-06-23 16:54:42 +02:00
Marcus Klaas
d7b49fd76c
Remove global mutable config to allow for concurrency
2015-06-23 13:26:04 +02:00
Nick Cameron
1488d5eadb
Merge pull request #90 from marcusklaas/empty-imports
...
Remove empty list imports
2015-06-22 17:32:55 -07:00
Gaëtan Cassiers
b7ead806f4
Use FromIterator implementation for Option
...
Combined with try_opt!, this avoid an explicit for loop or another macro.
2015-06-23 02:15:46 +02:00
Gaëtan Cassiers
ad658885d4
Comments for Rewrite
2015-06-23 02:15:46 +02:00
Gaëtan Cassiers
2161400c7d
Add a try_opt! macro for ease of work with Rewrite
2015-06-23 02:15:46 +02:00
Gaëtan Cassiers
c012d311c4
A basic impl of Rewrite for ast::Expr
2015-06-23 02:15:46 +02:00
Nick Cameron
c10bfecdc2
Merge pull request #114 from marcusklaas/rustup
...
Rustup
2015-06-22 15:36:20 -07:00
Gaëtan Cassiers
35c996054a
Use wrapping operations for bit-level functions
...
This handles a underflow panic on round_up_to_power_of_two(0).
2015-06-22 17:42:05 +02:00
Marcus Klaas
5924b83829
Rustup
2015-06-22 14:52:23 +02:00
Nick Cameron
b74cdb7b53
Merge pull request #109 from marcusklaas/fix-string-lit
...
Fix off-by-one errors in rewrite_string_lit
2015-06-16 09:59:24 +12:00
Marcus Klaas
74f050bb5a
Fix off-by-one bugs in rewrite_string_lit
...
Multi-line literals would typically have a character too many. Splitting of escape sequences also wasn't working correctly.
2015-06-15 21:37:04 +02:00
Marcus Klaas
b17c920e46
Deal with problematic characters in comments
2015-06-15 15:07:47 +02:00
Marcus Klaas
d335d04575
Implement checks for unnumbered TODOs and FIXMEs
2015-06-12 20:58:23 +02:00
Gaëtan Cassiers
4d6d0b81a7
Fix mod ordering + formatting
2015-06-08 20:23:24 +02:00
Gaëtan Cassiers
adedba45a8
Use impl_enum_decodable for SeparatorTactic
2015-06-08 19:40:22 +02:00
Marcus Klaas
13141e261b
Remove duplicate statement in make_comments_for_list
2015-06-04 15:05:50 +02:00
Marcus Klaas
227322ddba
Add macro for enum implementations of Decodable
2015-06-04 14:08:32 +02:00
Marcus Klaas
1ef7e23dd1
Move vertical mode override to write_list
2015-06-04 13:47:35 +02:00
Marcus Klaas
27d6558964
Remove empty list imports
2015-06-02 23:55:16 +02:00
Marcus Klaas
90bc40a111
Implement basic enum formatting
2015-06-02 15:52:07 +02:00
Nick Cameron
fb40a2796e
Merge pull request #85 from cassiersg/tuple
...
Implement reformat of tuple litterals
2015-05-31 20:11:10 +12:00
Gaëtan Cassiers
7a6b4db819
Handle tuples of length 1
2015-05-30 16:52:46 +02:00
Gaëtan Cassiers
38f421b764
fix : width available
2015-05-30 16:44:07 +02:00
Nick Cameron
90494132c2
Merge pull request #81 from tdudziak/issue_31
...
Optionally put the opening paren on the previous line for args (Issue #31 )
2015-05-29 11:59:37 +12:00
Gaëtan Cassiers
092d6be368
Implement reformat of tuple litterals
2015-05-28 21:30:28 +02:00
Tomasz Dudziak
1bb3c9e555
Use config!(tab_spaces) instead of hardcoded 4
.
2015-05-26 09:31:16 +02:00
Tomasz Dudziak
21a0f1b787
Clarify indent calcs in compute_budget_for_args
2015-05-25 21:29:02 +02:00
Tomasz Dudziak
fdd7baeae9
Optionally put the opening paren on the previous line for args
2015-05-25 16:39:19 +02:00
Gaëtan Cassiers
113bdaa119
Fix #79
2015-05-25 13:22:10 +02:00
Nick Cameron
46818d405a
Struct literals
2015-05-25 19:14:20 +12:00
Nick Cameron
972f494e4e
Pref for comma on the last field
2015-05-25 17:14:39 +12:00
Nick Cameron
e7adf64155
Format structs
2015-05-25 17:07:55 +12:00
Gaëtan Cassiers
09bd4a74e4
Avoid dangling )
2015-05-24 23:46:02 +02:00
Gaëtan Cassiers
c1fc693c5e
syle correction
2015-05-24 23:35:40 +02:00
Gaëtan Cassiers
0baeca5829
Add rewrite for ExprParen
2015-05-24 19:57:13 +02:00
Nick Cameron
6a5ef17eb1
Add config.rs which I forgot for the last commit
...
Closes #73
2015-05-23 22:25:36 +12:00
Nick Cameron
1a09a6d00a
Use config file for constants
2015-05-23 17:53:53 +12:00
Nick Cameron
aa6f7e8d3c
Add default.toml and modify the build system for it
2015-05-23 15:28:41 +12:00
Alex HotShot Newman
2fbb445b67
Remove old box syntax
2015-05-20 11:20:15 -07:00
Marcus Klaas
4aa3518703
Format required methods on traits
2015-05-12 02:37:05 +02:00
Nick Cameron
6b1494885c
Merge pull request #48 from oli-obk/newlines
...
handle windows newlines
2015-05-12 10:33:42 +12:00
Nick Cameron
3b383a4c22
Merge branch 'single-import' of https://github.com/mattyhall/rustfmt into mattyhall-single-import
...
Rebased:
src/imports.rs
2015-05-12 10:03:25 +12:00
Nick Cameron
e2a5d94e3f
Merge pull request #68 from marcusklaas/import-breaks
...
Keep import lists on a single line when possible
2015-05-12 09:39:22 +12:00
Oliver Schneider
853b58901b
typo
2015-05-11 15:05:12 +02:00
Marcus Klaas
c790d7d550
Keep import lists on a single line when possible
2015-05-04 22:22:31 +02:00
Oliver Schneider
cd3b032e11
prevent bogus whitespace error messages due to \r
2015-05-04 14:32:48 +02:00
Oliver Schneider
1655583b02
handle windows newlines
2015-05-04 12:50:24 +02:00
Marcus Klaas
58a14fbc79
Correctly indent use items and functions
2015-05-04 09:25:20 +02:00
Matthew Hall
59352172b3
Change import lists with one item to single import
...
Changes lists such as ``use std::{fmt}`` to a form without a list, eg
``use std::fmt``.
2015-05-02 20:28:38 +01:00
defyrlt
59554dd5e1
Resolved #56 -- mut
was eaten out of mut self
in fn args.
2015-05-02 20:27:08 +01:00
Oliver Schneider
62e583d4cf
split main function and test function into their own files
...
small modifications to make executable and test compile properly
2015-05-01 22:28:58 +02:00
Oliver Schneider
e6e7ce178f
main.rs -> lib.rs
2015-05-01 22:24:53 +02:00
Steven Allen
c006b84d87
Trust the borrow checker.
2015-05-01 12:17:14 -04:00
Nick Cameron
2b73dcd662
Merge pull request #57 from defyrlt/issue_56
...
`mut` was eaten out of `mut self` in fn args.
2015-05-01 23:16:54 +12:00
defyrlt
81c9db3275
Resolved #56 -- mut
was eaten out of mut self
in fn args.
2015-05-01 14:14:04 +03:00
Theodore DeRego
4f75227714
Spaces around in type bounds
2015-04-30 16:52:11 -10:00
Tobias Bucher
2145108043
Rename src/mod.rs
to src/main.rs
to adhere to the standard crate format
2015-04-30 13:37:09 +02:00
Nick Cameron
4560df2567
Merge pull request #43 from tbu-/pr_nostaticmut
...
Use `AtomicUsize` instead of `static mut` that require `unsafe`
2015-04-30 21:13:36 +12:00
Nick Cameron
0931b7c6df
Merge pull request #45 from tbu-/pr_toowned
...
Change `to_string` to `to_owned` when it just creates a `String` from a `&str`
2015-04-30 21:10:54 +12:00
Nick Cameron
8a0a1bdcd1
Merge pull request #46 from tbu-/pr_testwarnings
...
Fix warnings in `cargo test`
2015-04-30 21:10:25 +12:00
Tobias Bucher
2f221fd095
Use AtomicUsize
instead of static mut
that require unsafe
2015-04-30 10:40:37 +02:00
Tobias Bucher
5247d98d31
Change to_string
to to_owned
when it just creates a String
from a &str
...
This means that it doesn't have to go through the formatting hierarchy and can
just immediately reserve enough memory.
2015-04-30 10:31:42 +02:00
Manish Goregaokar
9398aed82c
Handle pub use ( fixes #23 )
2015-04-30 13:52:28 +05:30
Tobias Bucher
dc3e236599
Fix warnings in cargo test
2015-04-30 09:32:38 +02:00
Nick Cameron
25fcb7754a
Add README.md
2015-04-30 15:09:33 +12:00
Nick Cameron
2d5226b825
Use + for type bounds
2015-04-29 16:44:29 +12:00
Nick Cameron
f61ad35494
Preserve linebreaks in doc comments
2015-04-29 16:25:52 +12:00
Nick Cameron
16f9057975
Better handle trait items
2015-04-29 15:24:20 +12:00
Nick Cameron
2e485ea086
Better attribute handling
2015-04-29 15:03:15 +12:00
Nick Cameron
decafbbaea
Fix trailing commas in where clauses
2015-04-29 09:55:24 +12:00
Nick Cameron
40be79304e
Tweak rules around attributes for modules
2015-04-28 22:19:25 +12:00
Nick Cameron
81b8eb7993
Comments on their own lines between args
2015-04-28 21:57:16 +12:00
Nick Cameron
cdfda8801e
Absolute paths
2015-04-28 21:36:31 +12:00
Nick Cameron
9070a055de
Comments after return
2015-04-28 21:24:56 +12:00
Nick Cameron
a84287c6b0
Comments in function decls and annotations/doc comments
2015-04-28 20:56:01 +12:00
Nick Cameron
c00970f5e9
Indenting for modules
...
rustfmt now bootstraps!
2015-04-23 18:43:46 +12:00
Nick Cameron
daff43f761
Arg/line length bug
2015-04-23 18:35:56 +12:00
Nick Cameron
4faaa4dab2
minor reformatting
2015-04-23 18:10:43 +12:00
Nick Cameron
28d90bc439
trailing newline hell fixed
2015-04-23 18:02:55 +12:00
Nick Cameron
0c5f5082dc
terminating newline bug
2015-04-23 17:04:07 +12:00
Nick Cameron
2819738ff1
Fix formatting in changes.rs
2015-04-23 16:30:19 +12:00
Nick Cameron
bc7855d347
Idempotent tests and comments in function decls
2015-04-23 16:22:48 +12:00
Nick Cameron
854b52dbed
Keep comments on fn arguments
2015-04-21 22:50:43 +12:00
Nick Cameron
4c869a1b9d
Extract out more files
2015-04-21 21:01:19 +12:00
Nick Cameron
8ca3dc063e
Refactor missing spans and fix bug with trailing whitespace
2015-04-21 20:40:36 +12:00
Nick Cameron
6e082f7aad
Extract some methods for functions.
2015-04-21 19:59:48 +12:00
Nick Cameron
a652a83ffd
Trivial reformatting
2015-04-21 16:49:16 +12:00
Nick Cameron
defcceb879
Pull out some functionality into separate files
2015-04-21 16:47:15 +12:00
Nick Cameron
986de65b97
Write output to files
2015-04-21 16:28:10 +12:00
Nick Cameron
eccf43536b
Some configuration options for function layout
2015-04-21 12:02:30 +12:00
Nick Cameron
5ff6a45022
By value self in functions
2015-04-21 09:54:04 +12:00
Nick Cameron
6dbb3ef2f1
Function visibility
2015-04-21 09:38:16 +12:00
Nick Cameron
0a67babb95
Work across multiple files
2015-04-14 21:52:12 +12:00
Nick Cameron
8f5b899c85
Use strings.rs rather than local modules
2015-04-14 13:13:35 +12:00
Nick Cameron
76854677c1
New reformatting of fns
2015-04-14 13:00:46 +12:00
Steven Allen
0fd4b6a150
Update for new FnKind::FkMethod signature
2015-03-22 09:30:04 -07:00
Dan Glastonbury
33e12c58b9
Update from Path to PathBuf
2015-03-09 16:17:14 +10:00
Nick Cameron
3f58f829f3
A different, more pretty printing approach.
...
No longer uses the Rope data strucure.
2015-03-09 17:18:48 +13:00
Nick Cameron
4fd5f86732
Add string_buffer (not used yet)
2015-03-08 19:24:56 +13:00
Nick Cameron
7417ab5aed
Working prototype
...
Implements a few formatting options using an approach where we modify the source using a rope. Uses very ad-hoc rules for formatting.
2015-03-08 11:46:35 +13:00
Nick Cameron
f1e698c838
Save changes in the rope.
...
Also changes to using the new rustc interface
2015-02-02 21:59:03 +13:00
Nick Cameron
5caf49ff63
Commit changes code using map of adjustments
2015-01-26 15:20:30 +13:00