Class: RuboCop::Cop::Lint::IneffectiveAccessModifier

Inherits:
Cop
  • Object
show all
Defined in:
lib/rubocop/cop/lint/ineffective_access_modifier.rb

Constant Summary collapse

YAYOI_MSG =
"ζ*'ヮ')ζ<うっうー!%<line>d行目にある`%<modifier>s`は" \
'シングルトンメソッドの%<modifier>sを作りませんよー!' \
'代わりに%<alternative>s'.freeze
YAYOI_ALTERNATIVE_PRIVATE =
'`private_class_method`か`private`を' \
'`class << self`ブロックの内部に置きましょー!'.freeze
YAYOI_ALTERNATIVE_PROTECTED =
'`protected`を' \
'`class << self`ブロックの内部に置きましょー!'.freeze

Instance Method Summary collapse

Methods inherited from Cop

#message

Instance Method Details

#format_message(modifier) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/rubocop/cop/lint/ineffective_access_modifier.rb', line 15

def format_message(modifier)
  visibility = modifier.method_name
  alternative = if visibility == :private
                  YAYOI_ALTERNATIVE_PRIVATE
                else
                  YAYOI_ALTERNATIVE_PROTECTED
                end
  format(YAYOI_MSG, modifier: visibility,
                    line: modifier.location.expression.line,
                    alternative: alternative)
end