Class: RuboCop::Cop::Qt::PreferRubyStyleSetter

Inherits:
Base
  • Object
show all
Extended by:
AutoCorrector
Defined in:
lib/rubocop/cop/qt/prefer_ruby_style_setter.rb

Overview

Enforces Ruby-style Qt property setters over set_* bridge methods.

Examples:

# bad
widget.set_tool_tip('Hello')

# good
widget.tool_tip = 'Hello'

Constant Summary collapse

MSG =
'Prefer Ruby-style Qt setter `%<replacement>s` over `%<original>s`.'

Instance Method Summary collapse

Instance Method Details

#on_send(node) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/rubocop/cop/qt/prefer_ruby_style_setter.rb', line 18

def on_send(node)
  return unless qt_setter_call?(node)

  method_name = node.method_name.to_s
  replacement = replacement_source(node)
  add_offense(
    node.loc.selector,
    message: format(MSG, replacement: replacement, original: method_name)
  ) do |corrector|
    corrector.replace(node.source_range, replacement)
  end
end