class RuboCop::Cop::Layout::MultilineHashKeyLineBreaks
}}
c: 3,
{ a: 1, b: {
# good
@example AllowMultilineFinalElement: true
}}
c: 3,
{ a: 1, b: {
# bad
@example AllowMultilineFinalElement: false (default)
}
}
c: 3,
b: {
a: 1,
{
# good
}
c: 3
b: 2,
a: 1,
{
# good
}
c: 3
a: 1, b: 2,
{
# bad
@example
starts on a separate line.
Ensures that each key in a multi-line hash
def ignore_last_element?
def ignore_last_element? !!cop_config['AllowMultilineFinalElement'] end
def on_hash(node)
def on_hash(node) # This cop only deals with hashes wrapped by a set of curly # braces like {foo: 1}. That is, not a kwargs hashes. # Style/MultilineMethodArgumentLineBreaks handles those. return unless starts_with_curly_brace?(node) return unless node.loc.begin check_line_breaks(node, node.children, ignore_last: ignore_last_element?) end
def starts_with_curly_brace?(node)
def starts_with_curly_brace?(node) node.loc.begin end