Sha256: ba67bda03e0afa55d4250d1af79250a59e6529574c536c69c62df214aa070d64
Contents?: true
Size: 1.05 KB
Versions: 6765
Compression:
Stored size: 1.05 KB
Contents
# frozen_string_literal: true module RuboCop module Cop module Style # This cop enforces the use of consistent method names # from the String class. # # @example # # bad # 'name'.intern # 'var'.unfavored_method # # # good # 'name'.to_sym # 'var'.preferred_method class StringMethods < Cop include MethodPreference MSG = 'Prefer `%<prefer>s` over `%<current>s`.'.freeze def on_send(node) return unless preferred_method(node.method_name) add_offense(node, location: :selector) end alias on_csend on_send def autocorrect(node) lambda do |corrector| corrector.replace(node.loc.selector, preferred_method(node.method_name)) end end private def message(node) format(MSG, prefer: preferred_method(node.method_name), current: node.method_name) end end end end end
Version data entries
6,765 entries across 6,761 versions & 23 rubygems