class RubbyCop::Cop::Style::RescueModifier

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

Constants

MSG

Public Instance Methods

autocorrect(node) click to toggle source
# File lib/rubbycop/cop/style/rescue_modifier.rb, line 18
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/rubbycop/cop/style/rescue_modifier.rb, line 13
def on_resbody(node)
  return unless rescue_modifier?(node)
  add_offense(node.parent, :expression)
end