Class: Rubocop::Cop::Style::ModuleFunction
- Defined in:
- lib/rubocop/cop/style/module_function.rb
Overview
This cops checks for use of extend self
in a module.
module Test extend self
... end
Constant Summary collapse
- MSG =
'Use `module_function` instead of `extend self`.'
- TARGET_NODE =
s(:send, nil, :extend, s(:self))
Instance Attribute Summary
Attributes inherited from Cop
#autocorrect, #corrections, #debug, #disabled_lines, #offences
Instance Method Summary collapse
Methods inherited from Cop
#add_offence, all, #autocorrect_action, cop_name, cop_type, #do_autocorrect, #ignore_node, inherited, #initialize, lint?, #name, rails?, style?
Constructor Details
This class inherits a constructor from Rubocop::Cop::Cop
Instance Method Details
#on_module(node) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/rubocop/cop/style/module_function.rb', line 20 def on_module(node) _name, body = *node if body && body.type == :begin body.children.each do |body_node| if body_node == TARGET_NODE add_offence(:convention, body_node.loc.expression, MSG) end end end end |