Class: RuboCop::Cop::Performance::SortReverse
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::Performance::SortReverse
- Extended by:
- AutoCorrector
- Includes:
- SortBlock
- Defined in:
- lib/rubocop/cop/performance/sort_reverse.rb
Overview
This cop identifies places where `sort { |a, b| b <=> a }` can be replaced by a faster `sort.reverse`.
Constant Summary collapse
- MSG =
'Use `sort.reverse` instead of `%<bad_method>s`.'
Instance Method Summary collapse
Instance Method Details
#on_block(node) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/rubocop/cop/performance/sort_reverse.rb', line 22 def on_block(node) sort_with_block?(node) do |send, var_a, var_b, body| replaceable_body?(body, var_b, var_a) do range = sort_range(send, node) add_offense(range, message: (var_a, var_b)) do |corrector| replacement = 'sort.reverse' corrector.replace(range, replacement) end end end end |