+ // Try combining openings and closings
+ if args.len() == 1 && context.config.fn_call_style() == IndentStyle::Block {
+ let expr = &*args[0];
+ match expr.node {
+ ast::ExprKind::Struct(..) |
+ ast::ExprKind::Call(..) |
+ ast::ExprKind::Closure(..) => {
+ let max_width = min(one_line_width, context.config.fn_call_width());
+ let shape = Shape::legacy(max_width, shape.block().indent);
+ if let Some(expr_str) = expr.rewrite(context, shape) {
+ if first_line_width(&expr_str) <= max_width {
+ return Ok(format!("{}({})", callee_str, expr_str));
+ }
+ }
+ }
+ _ => (),
+ }
+ }
+