class RuboCop::Cop::Style::CollectionMethods

can yield some false positives.
Enumerable or not (static analysis limitation), so this cop
Unfortunately we cannot actually know if a method is from
from the Enumerable module.
This cop enforces the use of consistent method names

def autocorrect(node)

def autocorrect(node)
  lambda do |corrector|
    corrector.replace(node.loc.selector,
                      preferred_method(node.loc.selector.source))
  end
end

def check_method_node(node)

def check_method_node(node)
  return unless preferred_methods[node.method_name]
  add_offense(node, location: :selector)
end

def message(node)

def message(node)
  format(MSG,
         prefer: preferred_method(node.method_name),
         current: node.method_name)
end

def on_block(node)

def on_block(node)
  check_method_node(node.send_node)
end

def on_send(node)

def on_send(node)
  return unless node.arguments.one? &&
                node.first_argument.block_pass_type?
  check_method_node(node)
end