Commit Graph

1172 Commits

Author SHA1 Message Date
Nick Cameron
afc8be1d79 Change the logic around breaking multiple patterns in match arms
Refactor to use the list code, don't preserve original stacking-ness, base vertical vs mixed formatting on complexity of the patterns.

Closes #386
2016-04-12 09:23:37 +12:00
Aleksey Kladov
dc1fc4be0f unify format_string and format_file 2016-04-11 22:56:54 +03: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
Nick Cameron
7ac354fd09 Don't be so aggressie about line-breaking strings (#911)
We will no longer break in the middle of words, only at whitespace or punctuation.

This means we sometimes over-run, but that seems better than some of the bad splits we see.

Closes #369
2016-04-11 20:45:47 +02:00
Kamal Marhubi
72427356eb rustfmt: Simplify match in project file lookup loop
This commit changes the match in `lookup_project_file` to use pattern
guards.
2016-04-10 18:42:55 -04:00
Kamal Marhubi
fe5fa874da rustfmt: Make error handling more idiomatic
This commit replaces the `Operation::InvalidInput` variant with
`Result`, and uses the `try!()` macro instead of explicit matching.
2016-04-10 17:58:14 -04:00
Kamal Marhubi
b55e50f387 rustfmt: Move getopts::Options creation to its own function 2016-04-10 17:57:44 -04:00
Nick Cameron
19849fea15 Update the world 2016-04-08 15:51:06 +12:00
Nick Cameron
6cec513c67 Merge pull request #910 from kamalmarhubi/cancel-errors
macros: Cancel DiagnosticBuilder when not emitting error
2016-04-08 15:41:04 +12:00
Kamal Marhubi
a8c27c7086 macros: Cancel DiagnosticBuilder when not emitting error
The error handling in libsyntax changed to use a `DiagnosticBuilder`
type in the `Err` variant of `PResult`. This type has `emit()` and
`cancel()` methods. Once created, errors must be emitted or canceled; if
not, the `Drop` impl on `DiagnosticBuilder` will panic.

The first syntex_syntax release to include this change was v0.25.0. The
bump from v0.23.0 to v0.29.1 in #847 did not add any `cancel()` calls,
even though at least one was required. There may be others not caught in
this commit.
2016-04-07 18:05:57 -04: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
615848339b Merge branch 'master' of github.com:nrc/rustfmt into fn_arg_one_line 2016-04-07 19:53:19 +01:00
Nick Cameron
c59d96a747 Merge pull request #909 from srinivasreddy/refactor
Refactoring so that we write some error messages to stderr rather than stdout.
2016-04-07 08:31:23 +12:00
Srinivas Reddy Thatiparthy
901c5b1a5d use std::error instead std::out 2016-04-06 23:23:02 +05:30
Nick Cameron
ea766777ef Merge pull request #908 from matklad/simplify-tests
simplify tests
2016-04-05 16:53:37 +12:00
Aleksey Kladov
07cf62fc42 simplify tests
* change layout so that test group `foo` has source files in
`test/foo/source` and target files in `test/foo/target`.

* use significant comments to specify write mode instead of threading
  Option<WriteMode>
2016-04-05 02:45:39 +03:00
Nick Cameron
4fdf859787 Merge pull request #897 from matklad/refactor-run
Refactor run family of functions
2016-04-05 11:25:13 +12:00
Aleksey Kladov
c29ee66b94 make naming more consistent 2016-04-05 01:20:14 +03:00
0x0G
6e393b3d53 Fix. rustfmt write to stderr instead stdout
Fix. rustfmt write to stderr instead stdout
2016-04-04 12:49:16 +02:00
Nick Cameron
d9ccec6f82 Merge pull request #898 from srinivasreddy/spell
Correct spelling of 'style'
2016-04-03 22:43:20 +12:00
Aleksey Kladov
63887ed413 make format_string and fmt_lines private 2016-04-03 00:45:04 +03:00
Aleksey Kladov
ac4532e161 use format_input function in tests 2016-04-03 00:32:24 +03:00
Aleksey Kladov
255231d9ed don't read config twice during tests 2016-04-02 23:41:25 +03:00
Srinivas Reddy Thatiparthy
bee9682a49 Correct spelling of 'style' 2016-04-03 01:08:25 +05:30
Aleksey Kladov
84fb2f402e refactor: unify run and run_from_stdin 2016-04-02 22:24:38 +03:00
Aleksey Kladov
294b463b5d minor: use &mut ref instead of by value argument
This also unifies `write_all_files` and `write_file` functions
2016-04-02 19:36:56 +03: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
Nick Cameron
c3cef52cde Merge pull request #895 from erikjohnston/fn_arg_block_incorrect_indent
Fix incorrect indent with fn_args_layout: Block
2016-04-02 11:10:06 +13: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
Nick Cameron
5b11d2e80f Merge pull request #892 from marcusklaas/closed-ranges
Format closed ranges
2016-03-31 13:47:09 +13:00
Nick Cameron
19768da5c9 Version bump - v0.4
closes #870
2016-03-30 15:19:46 +13:00
Marcus Klaas de Vries
50820c6a43 Merge pull request #883 from marcusklaas/macro-with-name
Properly format macro's with an extra ident
2016-03-30 02:03:28 +02:00
Marcus Klaas
f941646118 Do not panic on type ascription or try shorthand
Instead, simply format expressions involving these unstable features
as they were found.
2016-03-30 00:01:54 +02:00
Marcus Klaas
9eee93306a Format closed ranges 2016-03-29 23:58:45 +02:00
Marcus Klaas
9e5c0390a0 Properly format macro's with an extra ident 2016-03-29 23:16:40 +02:00
Nick Cameron
d3b18d0b45 Merge pull request #889 from kamalmarhubi/next-power-of-two
Use checked_next_power_of_two from std instead of custom method
2016-03-29 21:00:31 +13:00
Nick Cameron
11391dfe7b Merge pull request #891 from kamalmarhubi/update-syntex-syntax
deps: Update syntex_syntax to 0.30.0
2016-03-29 20:58:57 +13:00
Nick Cameron
dd96c55801 Merge pull request #886 from matklad/make-illegal-states-unrepresentable
Introduce verbosity enum
2016-03-29 20:57:16 +13:00
Kamal Marhubi
f2b5931c6d deps: Update syntex_syntax to 0.30.0
This bump includes ability to parse inclusive ranges (`a...b`) and the
question mark operator.

Refs #867, #890
2016-03-29 00:04:44 -04:00
Kamal Marhubi
8168c7c44c Use checked_next_power_of_two from std instead of custom method
NB The custom method returned 0 on an input of 0, which is arguably
incorrect: 0 is not a power of two; the method in `std` returns 1 in
that case.
2016-03-28 23:36:22 -04:00
Nick Cameron
6526533745 Merge pull request #879 from matklad/proper-exit-code
cargo-fmt: don't return zero on failure
2016-03-29 13:56:00 +13:00
Aleksey Kladov
c7e51d3994 minor: use enum instead of pair of booleans
This is a bit more typing, but statically forbids using both verbose and
quiet
2016-03-29 02:37:43 +03:00
Aleksey Kladov
ac7778cc51 cargo-fmt: don't return zero on failure 2016-03-29 02:11:43 +03:00
Nick Cameron
cfc9f70116 Merge pull request #885 from marcusklaas/empty-trait-type-params
Remove trailing whitespace for fn types /w non-unit return
2016-03-29 08:17:52 +13:00
Nick Cameron
7d66861b82 Merge pull request #882 from marcusklaas/empty-makro-issues
Fix issues with empty macros with curly braces
2016-03-29 08:14:27 +13:00
Nick Cameron
9e399463e7 Merge pull request #881 from marcusklaas/nightly-update
Fix tuple destructuring in impl fns
2016-03-29 08:03:57 +13:00
Marcus Klaas
0142191e51 Remove trailing whitespace for fn types /w non-unit return 2016-03-27 20:40:23 +02:00
Marcus Klaas
0e0cf976c9 Fix issues with empty macros with curly braces 2016-03-27 13:44:40 +02:00