diff options
| author | Marcus Klaas de Vries <mail@marcusklaas.nl> | 2015-11-21 21:04:34 +0100 |
|---|---|---|
| committer | Marcus Klaas de Vries <mail@marcusklaas.nl> | 2015-11-21 21:04:34 +0100 |
| commit | 2a159e05ac4e0a42ab1e154b96bce01073d8bb1e (patch) | |
| tree | 9f4c5d032934e5e507eb745a33e61a9237ac2257 | |
| parent | 7809e3bb18b5a1ce6548a34c2559a9f08d3ac74a (diff) | |
| parent | 465662a69187f89a48700c746ec63200bbb21942 (diff) | |
Merge pull request #635 from Marwes/long_field_access
Fix long field accesses not being broken onto separate lines
| -rw-r--r-- | src/chains.rs | 18 | ||||
| -rw-r--r-- | tests/source/long_field_access.rs | 3 | ||||
| -rw-r--r-- | tests/target/long_field_access.rs | 4 |
3 files changed, 23 insertions, 2 deletions
diff --git a/src/chains.rs b/src/chains.rs index 665fb5ac073..9e85b22da02 100644 --- a/src/chains.rs +++ b/src/chains.rs @@ -194,8 +194,22 @@ fn rewrite_chain_expr(expr: &ast::Expr, width, offset) } - ast::Expr_::ExprField(_, ref field) => Some(format!(".{}", field.node)), - ast::Expr_::ExprTupField(_, ref field) => Some(format!(".{}", field.node)), + ast::Expr_::ExprField(_, ref field) => { + let s = format!(".{}", field.node); + if s.len() <= width { + Some(s) + } else { + None + } + } + ast::Expr_::ExprTupField(_, ref field) => { + let s = format!(".{}", field.node); + if s.len() <= width { + Some(s) + } else { + None + } + } _ => unreachable!(), } } diff --git a/tests/source/long_field_access.rs b/tests/source/long_field_access.rs new file mode 100644 index 00000000000..7aa626221ae --- /dev/null +++ b/tests/source/long_field_access.rs @@ -0,0 +1,3 @@ +fn f() { + block_flow.base.stacking_relative_position_of_display_port = self.base.stacking_relative_position_of_display_port; +} diff --git a/tests/target/long_field_access.rs b/tests/target/long_field_access.rs new file mode 100644 index 00000000000..349d2c2f639 --- /dev/null +++ b/tests/target/long_field_access.rs @@ -0,0 +1,4 @@ +fn f() { + block_flow.base.stacking_relative_position_of_display_port = + self.base.stacking_relative_position_of_display_port; +} |
