Sha256: 840acab52c81aca1d622e7786c032f01efcafc8629ed9e924d08601e58ca60ad
Contents?: true
Size: 959 Bytes
Versions: 14
Compression:
Stored size: 959 Bytes
Contents
# frozen_string_literal: true module RuboCop module Cop module Lint # This cop checks for using Fixnum or Bignum constant. # # @example # # # bad # # 1.is_a?(Fixnum) # 1.is_a?(Bignum) # # @example # # # good # # 1.is_a?(Integer) class UnifiedInteger < Cop MSG = 'Use `Integer` instead of `%<klass>s`.' def_node_matcher :fixnum_or_bignum_const, <<-PATTERN (:const {nil? (:cbase)} ${:Fixnum :Bignum}) PATTERN def on_const(node) klass = fixnum_or_bignum_const(node) return unless klass add_offense(node, message: format(MSG, klass: klass)) end def autocorrect(node) return false if target_ruby_version <= 2.3 lambda do |corrector| corrector.replace(node.loc.name, 'Integer') end end end end end end
Version data entries
14 entries across 14 versions & 2 rubygems