class RuboCop::Cop::Layout::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
# File lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb, line 75 def on_send(node) check_brace_layout(node) end
Private Instance Methods
# File lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb, line 81 def children(node) node.arguments end
RuboCop::Cop::MultilineLiteralBraceLayout#ignored_literal?
# File lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb, line 85 def ignored_literal?(node) single_line_ignoring_receiver?(node) || super end
# File lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb, line 89 def single_line_ignoring_receiver?(node) return false unless node.loc.begin && node.loc.end node.loc.begin.line == node.loc.end.line end