Sha256: d77fea97098694dc20ad3c3de5960e1fe0ceca72d36aa0cb573cd56dc4cafbc6
Contents?: true
Size: 1.03 KB
Versions: 3
Compression:
Stored size: 1.03 KB
Contents
# encoding: utf-8 module Rubocop module Cop module Style # This cop checks for uses of the deprecated methods Hash#has_key? # and Hash#has_value? class DeprecatedHashMethods < Cop MSG = '`Hash#%s` is deprecated in favor of `Hash#%s`.' DEPRECATED_METHODS = [:has_key?, :has_value?] def on_send(node) _receiver, method_name, *args = *node if args.size == 1 && DEPRECATED_METHODS.include?(method_name) add_offense(node, :selector, format(MSG, method_name, proper_method_name(method_name))) end end def autocorrect(node) @corrections << lambda do |corrector| corrector.replace(node.loc.selector, proper_method_name(node.loc.selector.source)) end end private def proper_method_name(method_name) method_name.to_s.sub(/has_/, '') end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems