Class: RuboCop::Cop::EachReturnValue
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::EachReturnValue
- Extended by:
- AutoCorrector
- Includes:
- RangeHelp
- Defined in:
- lib/rubocop/cop/each_return_cops.rb
Overview
This cop checks for the use of return values when calling ‘each` method.
‘each` method just returns the same object that was originally being called, so it makes no sense to store it in another variable. Most probably the author thought she was calling `map` and wanted to use the result, this cop helps the developer identify those cases. It can autocorrect this offense by removing the variable and the operator of a lvasgn.
Instance Method Summary collapse
Instance Method Details
#on_lvasgn(node) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/rubocop/cop/each_return_cops.rb', line 29 def on_lvasgn(node) if array_each?(node) add_offense(node, message: 'Do not use the return value of .each') do |corrector| corrector.remove(node.loc.name) corrector.remove(range_with_surrounding_space(range: node.loc.operator)) end end end |