Sha256: dcffd5265764bc3347df727fa92a57df6c48ffa4db466e6b2c068c6eacfb68f2
Contents?: true
Size: 784 Bytes
Versions: 15
Compression:
Stored size: 784 Bytes
Contents
# frozen_string_literal: true module RuboCop module Cop module Style # This cop checks for comparison of something with nil using ==. # # @example # # # bad # if x == nil # # # good # if x.nil? class NilComparison < Cop MSG = 'Prefer the use of the `nil?` predicate.'.freeze def_node_matcher :nil_comparison?, '(send _ {:== :===} (:nil))' def on_send(node) nil_comparison?(node) do add_offense(node, :selector) end end private def autocorrect(node) new_code = node.source.sub(/\s*={2,3}\s*nil/, '.nil?') ->(corrector) { corrector.replace(node.source_range, new_code) } end end end end end
Version data entries
15 entries across 15 versions & 2 rubygems