Commit graph

586 commits

Author SHA1 Message Date
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
Nick Cameron
ba936766c6 Take rustfmt_skip attribute into account on modules
Closes #632
2015-11-23 09:20:53 +13:00
Nick Cameron
b9832f2e9f Merge pull request #638 from marcusklaas/visual-struct-last-comment
Fix last comment for visually formatted struct lits
2015-11-23 07:23:58 +13:00
Marcus Klaas
2b0a25a539 Fix last comment for visually formatted struct lits 2015-11-22 17:41:54 +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 de Vries
a871405f45 Merge pull request #633 from marcusklaas/mod-comment
Rewrite module declarations
2015-11-21 21:24:29 +01:00
Marcus Klaas
49e2a146b1 Rewrite module declarations 2015-11-21 21:06:29 +01:00
Marcus Klaas de Vries
2a159e05ac Merge pull request #635 from Marwes/long_field_access
Fix long field accesses not being broken onto separate lines
2015-11-21 21:04:34 +01:00
Markus Westerlind
465662a691 Fix long field accesses not being broken onto separate lines
Fixes #512
2015-11-21 01:05:31 +01:00
Nick Cameron
7809e3bb18 Merge pull request #634 from Marwes/block_comment_crlf
Avoid adding an extra newline after block comments
2015-11-21 12:47:53 +13:00
Markus Westerlind
ad7dc420cd Avoid adding an extra newline after block comments
When block comments were rewritten to line comments they check if a new line needs to be added and adds one if needed. It only checked for '\n' however which would cause a newline to be added even if the comment was ended by "\r\n"
2015-11-20 23:31:05 +01:00
Marcus Klaas
9fe3c08abc Add option to disable (un)wrapping of match arms 2015-11-20 21:50:25 +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
Nick Cameron
3533f72c45 Merge pull request #618 from zyphrus/master
Comments in structs use appropriate style
2015-11-20 18:14:26 +13:00
Nick Cameron
a15dc3d373 Merge pull request #628 from kyeah/single-line-fn
Single-line Functions
2015-11-20 18:13:03 +13: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
Steven Fackler
d7b331bea7 Use argv[0] for usage output
Usage messages traditionally use this as it contains the path that the
user provided to run the executable (e.g. `rustfmt` instead of
`/usr/local/bin/rustfmt`).
2015-11-19 17:56:37 -08:00
David Barnett
b3f41e82fc Use tactic instead of config
Add mixed test
Mixed is unreachable as there is no input combination that could get
to this value
2015-11-20 10:37:00 +13: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
Jan Likar
f85ff8d0e5 Print version of the crate
Print version acquired from Cargo when building. If built using rustc
directly, print X.X.X
2015-11-18 00:56:46 +01:00
Pavel Sountsov
a96a69b708 Comments.
- Move the option
- Add some more tests (don't pass yet)
2015-11-16 23:18:07 -08:00
David Barnett
30aec386f4 Comments in structs use appropriate style
Fixes #491
2015-11-17 11:57:49 +13:00
Jan Likar
1eb38c461e Add -V as a shorthand for --version 2015-11-16 14:52:14 +01:00
Jan Likar
6e063a1430 Add --version switch
Add --version switch, which prints a short hash of the current
commit. Fix #612
2015-11-16 04:37:08 +01: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
Nick Cameron
f88345c431 Merge pull request #607 from rhoot/native-newline
Adding a "Native" option to newline_style.
2015-11-16 08:25:22 +13:00
Johan Sköld
add37b9c49 Adds a "Native" option to newline_style.
By using it one will get \r\n line endings on Windows, and \n line endings
on other platforms.
2015-11-15 04:16:34 -08:00
Seo Sanghyeon
faff4bc9e8 Add verbose mode 2015-11-15 15:41:41 +09:00
Eli Friedman
2fff041b43 Pass in whether an ast::Path is in an expression context.
This gets rid of a slightly nasty hack involving scanning the source
expression for a ":".
2015-11-14 13:54:57 -08:00
Marcus Klaas de Vries
de599015de Merge pull request #601 from thorbenk/chains_tabbed_indent
Chains tabbed indent
2015-11-14 22:00:11 +01:00
Thorben Kroeger
d4be6a43e9 new config 'chain_indent' 2015-11-14 21:50:40 +01:00
Mika Attila
5b06ed6817 Don't print an unnecessary newline after printing format report
The Display implementation for FormatReport already prints
a newline after every error.

However, if the format report does not contain errors, we
don't want to print an empty newline.

This behavior clutters up the console output with
empty lines when rustfmt is invoked multiple times
(from .e.g a script or cargo-fmt).

So instead of using println! to print the report, we just
use print!.
2015-11-14 19:01:28 +01:00
Nick Cameron
2cf2230002 Merge pull request #596 from marcusklaas/where-indent
Fix brace indentation after where clause
2015-11-14 10:04:04 +13:00
Nick Cameron
fb6faed99b Merge pull request #597 from marcusklaas/method-generix
Fix span issue with generic method calls
2015-11-14 10:03:12 +13:00
Marcus Klaas
c93c771e71 Fix span issue with generic method calls 2015-11-13 14:53:34 +01:00
Marcus Klaas
d32245a13d Fix brace indentation after where clause 2015-11-13 14:31:20 +01:00
Jan Likar
4443c4b7cc Correct some non-idiomatic code 2015-11-13 02:08:57 +01:00
Jan Likar
cb64ab22ec Enable rustfmt to format a list of files
Fix #580 by allowing rustfmt to accept a list of files. This also
enables usage of shell wildcard expansion, although notably this does
not work with cmd.exe on Windows. For example: 'rustfmt *.rs' will
format all rust files in the current working directory.

  - Change usage text to show rustfmt will accept a list of files
  - Change "Using rustfmt config file: {}" message to
    "Using rustfmt config file {} for {}"
  - Change Operation::Format(PathBuf, WriteMode) to
    Operation::Format(Vec<PathBuf>, WriteMode)
  - Loop through Vec<PathBuf>, load config and call 'run' for each path
2015-11-13 01:32:22 +01:00
Marcus Klaas de Vries
b6120b39ab Merge pull request #571 from nrc/semi
Don't strip semi-colons from expressions with non-void type since it …
2015-11-10 08:43:29 +01:00
Jørn Lode
5d07b63ce5 Check if the CWD contains a config (previously it only checked parents) 2015-11-09 21:41:25 +01:00
Marcus Klaas de Vries
e0e24c4e76 Merge pull request #573 from nrc/doom_panic
Format tuple structs better
2015-11-09 20:17:50 +01:00
Nick Cameron
b7d61254a7 Option to disable line breaking in comments
Set to false by default for now, since we are having a lot of problems with comments. We should set to true once we have a better algorithm.
2015-11-10 08:03:01 +13:00
Nick Cameron
bcda2824a2 Format tuple structs better
closes #546
2015-11-09 19:00:04 +13:00
Nick Cameron
3dc0b804f1 Don't strip semi-colons from expressions with non-void type since it can change semantics 2015-11-09 13:23:19 +13:00
Kamal Marhubi
ae13bbcc98 Move config help to dedicated --config-help flag
The existing help output is very verbose, overflowing a 50+ line
terminal. This moves the configuration options to a separate help flag
to make a mistyped command less annoying!
2015-11-07 19:03:25 -05:00
Mitsutaka Mimura
67f0b00112 fix unused variable path warning 2015-11-05 08:14:55 +09:00
Florian Zeitz
2aa35f0f6d Honor "enum_trailing_comma" option. Fixes #556 2015-11-03 23:57:31 +01:00
Johann
154e20a04f Address review concerns 2015-11-03 09:16:33 +01:00
Johann
fcc62cbbe0 Stdin support
Adds support for receiving input from stdin in case no file was
specified. This is useful for editor/IDE integrations and other tooling.

To achieve clean output a new write-mode option called plain was added,
this option is mandatory when using stdin.
2015-11-02 20:45:45 +01:00
Eli Friedman
1c235de97d Fix crash speculatively parsing macro arguments as expressions.
The problem is essentially that if we try to parse a token tree using a
CodeMap different from the one the tree was originally parsed with,
spans become nonsense. Since CodeMaps can't be cloned, we're basically
forced to use the original ParseSess for additional parsing.

Ideally, rustfmt would be a bit more clever and figure out how to parse
macro arguments based on the definition of the macro itself, rather than
just guessing that a particular token sequence looks like an expression,
but this is good enough for now.

Fixes #538.
2015-10-27 23:41:32 -07:00
Nick Cameron
100058f2de Merge pull request #531 from marcusklaas/match-inner-block
Address some issues with multiline patterns in let statements
2015-10-26 06:46:26 +13:00
Marcus Klaas
4fa0b0bc57 Print configuration options once in help message 2015-10-24 16:03:10 +02:00
Marcus Klaas
d122ad5adc Address some issues with multiline patterns in let statements 2015-10-24 13:13:15 +02:00
Ravi Shankar
d135217db2 show rustfmt coverage! 2015-10-24 15:22:37 +05:30
Nick Cameron
29b244b67e Merge pull request #471 from defuz/relative-configfile
Lookup of rustfmt.toml file should be relative from input file
2015-10-24 12:20:54 +13:00
defuz
2ec769709f Lookup rustfmt.toml file is relative from input file, not from current directory 2015-10-24 02:14:12 +03:00
Nick Cameron
efa5df39a5 Merge pull request #530 from marcusklaas/match-inner-block
Bump match inner block indent a level
2015-10-24 11:22:50 +13:00
Nick Cameron
0c1360a77c Merge pull request #529 from marcusklaas/pattern-indent
Fix indentation for enum-style patterns
2015-10-24 11:15:01 +13:00
Nick Cameron
45bcf59bde Merge pull request #528 from marcusklaas/chain-idempotence
Restore idempotence for chain formatting
2015-10-24 11:14:24 +13:00
Alex Crichton
e6b7ad3e39 Ignore #[cfg_attr(rustfmt, rustfmt_skip)] functions
This adds to #[rustfmt_skip] but is usable on stable Rust!
2015-10-23 13:46:14 -07:00
Alex Crichton
26958a1c10 Move option parsing to crates.io-based getopts crate
Should help adding more options in the future as well!
2015-10-23 13:46:14 -07:00
Alex Crichton
579fb34417 Remove dependence on rustc/rustc_driver, use syntex
Instead just parse manually with the `syntex_syntax` crate which is a clone of
libsyntax on crates.io which builds on stable Rust.
2015-10-23 13:46:14 -07:00
Alex Crichton
36abfe5dc2 Remove usage of many unstable features
This removes usage of:

* PathExt
* split_last
* split_last_mut
* catch_panic

The catch_panic one was a little tricky as the ident interner needed to be
cloned across threads (a little unsafely), but it should otherwise be good to
go.
2015-10-23 13:46:14 -07:00
Alex Crichton
cda463275e Use the log/env_logger crates from crates.io 2015-10-23 13:46:14 -07:00
Marcus Klaas
b41965539a Bump match inner block indent a level 2015-10-23 21:39:26 +02:00
Marcus Klaas
ae5d7e6ba4 Fix indentation for enum-style patterns 2015-10-23 20:44:46 +02:00
Marcus Klaas
0bb979bb85 Restore idempotence for chain formatting 2015-10-23 20:37:45 +02:00
Marcus Klaas de Vries
7e76fad1f5 Merge pull request #485 from marcusklaas/floaters2
Deal with floaters
2015-10-22 22:33:24 +02:00
Marcus Klaas
2d267b16d1 Deal with floating links in chains 2015-10-22 22:30:01 +02:00
Eli Friedman
e720218ffb Improve handling of commas after match arms.
Fixes #507. Fixes #508.
2015-10-21 14:35:45 -07:00
Eli Friedman
be9e7dc689 Don't use visit::walk_*. Instead, recurse by hand.
This is much more straightforward to understand given how rustfmt
rewriting works, and it avoids walking into expressions in unexpected
places.

Fixes #513. Fixes #514.
2015-10-21 13:46:13 -07:00
Tim Kuehn
6b4ef7457a Fix doc comment regression and add tests. 2015-10-20 02:13:14 -07:00
Marcus Klaas
e8447a8210 Fix large block comments 2015-10-19 23:06:36 +02:00
Marcus Klaas
3970748f59 Remove overflow indentation 2015-10-19 23:06:36 +02:00
Marcus Klaas
cf0f5ca814 Implement CommentCodeSlices 2015-10-19 23:06:35 +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
Nick Cameron
d7019ce897 Merge pull request #474 from marcusklaas/fn-indent
Properly indent pub fns in extern blocks
2015-10-18 15:19:32 +13:00
Nick Cameron
51afb3ed10 Merge pull request #475 from marcusklaas/vektorz
Format vec! macro using brackets
2015-10-18 15:17:49 +13:00
Sinh Pham
82a6cca010 Refactor write_snippet 2015-10-17 11:35:47 -07: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
a9bd695723 Format vec! macro using brackets 2015-10-16 22:55:42 +02:00
Marcus Klaas
5cc60dca97 Remove unsafe push and pop variants 2015-10-16 18:11:46 +02:00
Marcus Klaas de Vries
dfa8ae4048 Merge pull request #464 from marcusklaas/semicolonz
Force semicolons after break/continue/return. Remove after blocks.
2015-10-15 21:03:38 +02:00
Marcus Klaas
5ca9381d74 Adjust for unified enum variants and structs 2015-10-15 20:37:36 +02:00
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_skips 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