Sha256: 620542ab6462a79c2801d802b84b75647a00dc4e2dbcb9f37eb19b62f44d43ad
Contents?: true
Size: 790 Bytes
Versions: 16
Compression:
Stored size: 790 Bytes
Contents
# frozen_string_literal: true module RuboCop module Cop module Style # This cops checks for uses of Proc.new where Kernel#proc # would be more appropriate. # # @example # # bad # p = Proc.new { |n| puts n } # # # good # p = proc { |n| puts n } # class Proc < Cop MSG = 'Use `proc` instead of `Proc.new`.'.freeze def_node_matcher :proc_new?, '(block $(send (const nil? :Proc) :new) ...)' def on_block(node) proc_new?(node) do |block_method| add_offense(block_method) end end def autocorrect(node) ->(corrector) { corrector.replace(node.source_range, 'proc') } end end end end end
Version data entries
16 entries across 16 versions & 2 rubygems