class RuboCop::Cop::Layout::AlignParameters

:baz
foo :bar,
# bad
:baz
foo :bar,
# good
@example EnforcedStyle: with_fixed_indentation
:baz
foo :bar,
# bad
:baz
foo :bar,
# good
@example EnforcedStyle: with_first_parameter (default)
definition are aligned.
Here we check if the parameters on a multi-line method call or

def autocorrect(node)

def autocorrect(node)
  AlignmentCorrector.correct(processed_source, node, column_delta)
end

def base_column(node, args)

def base_column(node, args)
  if fixed_indentation?
    lineno = target_method_lineno(node)
    line = node.source_range.source_buffer.source_line(lineno)
    indentation_of_line = /\S.*/.match(line).begin(0)
    indentation_of_line + configured_indentation_width
  else
    display_column(args.first.source_range)
  end
end

def fixed_indentation?

def fixed_indentation?
  cop_config['EnforcedStyle'] == 'with_fixed_indentation'
end

def message(node)

def message(node)
  type = node && node.parent.send_type? ? 'call' : 'definition'
  msg = fixed_indentation? ? FIXED_INDENT_MSG : ALIGN_PARAMS_MSG
  format(msg, type: type)
end

def on_send(node)

def on_send(node)
  return if node.arguments.size < 2 ||
            node.send_type? && node.method?(:[]=)
  check_alignment(node.arguments, base_column(node, node.arguments))
end

def target_method_lineno(node)

def target_method_lineno(node)
  if node.def_type? || node.defs_type?
    node.loc.keyword.line
  elsif node.loc.selector
    node.loc.selector.line
  else
    # l.(1) has no selector, so we use the opening parenthesis instead
    node.loc.begin.line
  end
end