Class: RuboCop::Cop::Lecture::ExplainLonelyOperator

Inherits:
Base
  • Object
show all
Defined in:
lib/rubocop/cop/lecture/explain_lonely_operator.rb

Overview

&.はレシーバのnilチェックをしてメソッド呼び出しをする演算子です。 foo&.methodでは、fooがnilのときはメソッド呼び出しをせずnilを返し、fooがnil以外ではmethodメソッドを呼び出します。

&.は通称「ぼっち演算子」とも呼ばれます。人が1人でひざを抱えて座っているように見えるからです。

Examples:

# good
foo = nil
foo&.upcase #=> nil

# good
foo = "ruby"
foo&.upcase #=> "RUBY"

Constant Summary collapse

MSG =
"`&.`\u306F\u30EC\u30B7\u30FC\u30D0\u306Enil\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u30E1\u30BD\u30C3\u30C9\u547C\u3073\u51FA\u3057\u3092\u3059\u308B\u6F14\u7B97\u5B50\u3067\u3059\u3002\nfoo&.method\u3067\u306F\u3001foo\u304Cnil\u306E\u3068\u304D\u306F\u30E1\u30BD\u30C3\u30C9\u547C\u3073\u51FA\u3057\u3092\u305B\u305Anil\u3092\u8FD4\u3057\u3001foo\u304Cnil\u4EE5\u5916\u3067\u306Fmethod\u30E1\u30BD\u30C3\u30C9\u3092\u547C\u3073\u51FA\u3057\u307E\u3059\u3002\n\n&.\u306F\u901A\u79F0\u300C\u307C\u3063\u3061\u6F14\u7B97\u5B50\u300D\u3068\u3082\u547C\u3070\u308C\u307E\u3059\u3002\u4EBA\u304C1\u4EBA\u3067\u3072\u3056\u3092\u62B1\u3048\u3066\u5EA7\u3063\u3066\u3044\u308B\u3088\u3046\u306B\u898B\u3048\u308B\u304B\u3089\u3067\u3059\u3002\n"

Instance Method Summary collapse

Instance Method Details

#on_csend(node) ⇒ Object



28
29
30
# File 'lib/rubocop/cop/lecture/explain_lonely_operator.rb', line 28

def on_csend(node)
  add_offense(node)
end