class RuboCop::Cop::Performance::Casecmp

def correction(node, _receiver, method, arg, variable)

def correction(node, _receiver, method, arg, variable)
  lambda do |corrector|
    corrector.insert_before(node.loc.expression, '!') if method == :!=
    # we want resulting call to be parenthesized
    # if arg already includes one or more sets of parens, don't add more
    # or if method call already used parens, again, don't add more
    replacement = if arg.send_type? || !parentheses?(arg)
                    "#{variable.source}.casecmp(#{arg.source}).zero?"
                  else
                    "#{variable.source}.casecmp#{arg.source}.zero?"
                  end
    corrector.replace(node.loc.expression, replacement)
  end
end