Class: RuboCop::Cop::Naming::DirMethods

Inherits:
Base
  • Object
show all
Includes:
DefNode
Defined in:
lib/rubocop/cop/naming/dir_methods.rb

Constant Summary collapse

MODIFIERS =
[:public, :protected, :private].freeze

Instance Method Summary collapse

Instance Method Details

#on_def(node) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/rubocop/cop/naming/dir_methods.rb', line 11

def on_def(node)
  node_visibility_modifier = visibility_modifier(node)
  return if node_visibility_modifier != :public

  file_path = current_file_path(node)
  _, dir_config = dir_config(file_path)
  return if dir_config.nil? || dir_config["allowed_methods"].include?(node.method_name.to_s)

  add_offense(node, message: offense_message(node, dir_config))
end