Class: RuboCop::Cop::I18n::GetText::DecorateFunctionMessage

Inherits:
Base
  • Object
show all
Extended by:
AutoCorrector
Defined in:
lib/rubocop/cop/i18n/gettext/decorate_function_message.rb

Overview

rubocop:disable Metrics/ClassLength

Instance Method Summary collapse

Instance Method Details

#on_send(node) ⇒ Object

rubocop:disable Metrics/PerceivedComplexity



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/rubocop/cop/i18n/gettext/decorate_function_message.rb', line 12

def on_send(node)
  return unless node.loc.selector

  method_name = node.loc.selector.source
  return unless GetText.supported_method?(method_name)

  method_name = node.method_name
  arg_nodes = node.arguments
  if !arg_nodes.empty? && !already_decorated?(node) && (contains_string?(arg_nodes) || string_constant?(arg_nodes))
    message_section = if string_constant?(arg_nodes)
                        arg_nodes[1]
                      else
                        arg_nodes[0]
                      end

    detect_and_report(node, message_section, method_name)
  end
end