Module: RuboCop::Cop::Lint::UnusedArgument
- Included in:
- UnusedBlockArgument, UnusedMethodArgument, Performance::HashEachMethods
- Defined in:
- lib/rubocop/cop/mixin/unused_argument.rb
Overview
Common functionality for cops handling unused arguments.
Instance Method Summary collapse
- #after_leaving_scope(scope, _variable_table) ⇒ Object
- #autocorrect(node) ⇒ Object
- #check_argument(variable) ⇒ Object
- #join_force?(force_class) ⇒ Boolean
Instance Method Details
#after_leaving_scope(scope, _variable_table) ⇒ Object
12 13 14 15 16 |
# File 'lib/rubocop/cop/mixin/unused_argument.rb', line 12 def after_leaving_scope(scope, _variable_table) scope.variables.each_value do |variable| check_argument(variable) end end |
#autocorrect(node) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/rubocop/cop/mixin/unused_argument.rb', line 26 def autocorrect(node) return if %i[kwarg kwoptarg].include?(node.type) if node.blockarg_type? lambda do |corrector| range = range_with_surrounding_space(node.source_range, :left) range = range_with_surrounding_comma(range, :left) corrector.remove(range) end else ->(corrector) { corrector.insert_before(node.loc.name, '_') } end end |
#check_argument(variable) ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/rubocop/cop/mixin/unused_argument.rb', line 18 def check_argument(variable) return if variable.should_be_unused? return if variable.referenced? = (variable) add_offense(variable.declaration_node, :name, ) end |
#join_force?(force_class) ⇒ Boolean
8 9 10 |
# File 'lib/rubocop/cop/mixin/unused_argument.rb', line 8 def join_force?(force_class) force_class == VariableForce end |