class RuboCop::Cop::Lint::DuplicateRescueException
Checks that there are no repeated exceptions used in 'rescue' expressions.
@example
# bad begin something rescue FirstException handle_exception rescue FirstException handle_other_exception end # good begin something rescue FirstException handle_exception rescue SecondException handle_other_exception end
Constants
- MSG
Public Instance Methods
on_rescue(node)
click to toggle source
# File lib/rubocop/cop/lint/duplicate_rescue_exception.rb, line 33 def on_rescue(node) return if rescue_modifier?(node) node.resbody_branches.each_with_object(Set.new) do |resbody, previous| rescued_exceptions = resbody.exceptions rescued_exceptions.each do |exception| add_offense(exception) unless previous.add?(exception) end end end