class RuboCop::Cop::Style::RescueModifier

This cop checks for uses of rescue in its modifier form.

@example

# bad
some_method rescue handle_error

# good
begin
  some_method
rescue
  handle_error
end

Constants

MSG

Public Instance Methods

autocorrect(node) click to toggle source
# File lib/rubocop/cop/style/rescue_modifier.rb, line 30
def autocorrect(node)
  operation, rescue_modifier, = *node
  *_, rescue_args = *rescue_modifier

  indent = indentation(node)
  correction =
    "begin\n" \
    "#{operation.source.gsub(/^/, indent)}" \
    "\n#{offset(node)}rescue\n" \
    "#{rescue_args.source.gsub(/^/, indent)}" \
    "\n#{offset(node)}end"

  lambda do |corrector|
    corrector.replace(node.source_range, correction)
  end
end
on_resbody(node) click to toggle source
# File lib/rubocop/cop/style/rescue_modifier.rb, line 24
def on_resbody(node)
  return unless rescue_modifier?(node)

  add_offense(node.parent)
end