class RuboCop::Cop::Style::MapCompactWithConditionalBlock
def on_send(node)
def on_send(node) map_and_compact?(node) do |block_argument_node, condition_node, return_value_node| return unless returns_block_argument?(block_argument_node, return_value_node) return if condition_node.parent.elsif? method = truthy_branch?(return_value_node) ? 'select' : 'reject' range = range(node) add_offense(range, message: format(MSG, method: method)) do |corrector| corrector.replace( range, "#{method} { |#{block_argument_node.source}| #{condition_node.source} }" ) end end end