Skip to content

Commit

Permalink
Rollup merge of #132369 - joshtriplett:style-guide-binop-heuristic-as…
Browse files Browse the repository at this point in the history
…signment-only, r=calebcartwright

style-guide: Only use the new binop heuristic for assignments

This avoids pathological cases where chains of binops get progressively
deeper.
  • Loading branch information
GuillaumeGomez authored Nov 1, 2024
2 parents 526c67f + d7e6074 commit 348d280
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 11 deletions.
5 changes: 3 additions & 2 deletions src/doc/style-guide/src/editions.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,9 @@ include:
of a delimited expression, delimited expressions are generally combinable,
regardless of the number of members. Previously only applied with exactly
one member (except for closures with explicit blocks).
- When line-breaking a binary operator, if the first operand spans multiple
lines, use the base indentation of the last line.
- When line-breaking an assignment operator, if the left-hand side spans
multiple lines, use the base indentation of the last line of the left-hand
side to indent the right-hand side.
- Miscellaneous `rustfmt` bugfixes.
- Use version-sort (sort `x8`, `x16`, `x32`, `x64`, `x128` in that order).
- Change "ASCIIbetical" sort to Unicode-aware "non-lowercase before lowercase".
Expand Down
12 changes: 3 additions & 9 deletions src/doc/style-guide/src/expressions.md
Original file line number Diff line number Diff line change
Expand Up @@ -328,9 +328,9 @@ foo_bar
Prefer line-breaking at an assignment operator (either `=` or `+=`, etc.) rather
than at other binary operators.

If line-breaking at a binary operator (including assignment operators) where the
first operand spans multiple lines, use the base indentation of the *last*
line of the first operand, and indent relative to that:
If line-breaking an assignment operator where the left-hand side spans multiple
lines, use the base indentation of the *last* line of the left-hand side, and
indent the right-hand side relative to that:

```rust
impl SomeType {
Expand All @@ -341,12 +341,6 @@ impl SomeType {
.extra_info =
long_long_long_long_long_long_long_long_long_long_long_long_long_long_long;

self.array[array_index as usize]
.as_mut()
.expect("thing must exist")
.extra_info
+ long_long_long_long_long_long_long_long_long_long_long_long_long_long_long;

self.array[array_index as usize]
.as_mut()
.expect("thing must exist")
Expand Down

0 comments on commit 348d280

Please sign in to comment.