class RuboCop::Cop::Style::MultilineMethodCallBraceLayout

This cop checks that the closing brace in a method call is either on the same line as the last method argument, or a new line.

When using the `symmetrical` (default) style:

If a method call's opening brace is on the same line as the first argument of the call, then the closing brace should be on the same line as the last argument of the call.

If an method call's opening brace is on the line above the first argument of the call, then the closing brace should be on the line below the last argument of the call.

When using the `new_line` style:

The closing brace of a multi-line method call must be on the line after the last argument of the call.

When using the `same_line` style:

The closing brace of a multi-line method call must be on the same line as the last argument of the call.

@example

# symmetrical: bad
# new_line: good
# same_line: bad
foo(a,
  b
)

# symmetrical: bad
# new_line: bad
# same_line: good
foo(
  a,
  b)

# symmetrical: good
# new_line: bad
# same_line: good
foo(a,
  b)

# symmetrical: good
# new_line: good
# same_line: bad
foo(
  a,
  b
)

Constants

ALWAYS_NEW_LINE_MESSAGE
ALWAYS_SAME_LINE_MESSAGE
NEW_LINE_MESSAGE
SAME_LINE_MESSAGE

Public Instance Methods

on_send(node) click to toggle source
# File lib/rubocop/cop/style/multiline_method_call_brace_layout.rb, line 75
def on_send(node)
  check_brace_layout(node)
end

Private Instance Methods

children(node) click to toggle source
# File lib/rubocop/cop/style/multiline_method_call_brace_layout.rb, line 81
def children(node)
  _receiver, _method_name, *args = *node

  args
end