Sha256: 92d2adf748af47ef6567e4fb665d99ad8c5245042dea224289695b37dd90b838
Contents?: true
Size: 952 Bytes
Versions: 181
Compression:
Stored size: 952 Bytes
Contents
# frozen_string_literal: true module RuboCop module Cop module Lint # Checks that there are no repeated conditions # used in case 'when' expressions. # # @example # # # bad # # case x # when 'first' # do_something # when 'first' # do_something_else # end # # @example # # # good # # case x # when 'first' # do_something # when 'second' # do_something_else # end class DuplicateCaseCondition < Base MSG = 'Duplicate `when` condition detected.' def on_case(case_node) case_node.when_branches.each_with_object(Set.new) do |when_node, previous| when_node.each_condition do |condition| add_offense(condition) unless previous.add?(condition) end end end end end end end
Version data entries
181 entries across 174 versions & 18 rubygems