class RuboCop::Cop::InternalAffairs::RedundantSourceRange

Checks for redundant ‘source_range`.

@example

# bad
node.source_range.source

# good
node.source

# bad
add_offense(node.source_range)

# good
add_offense(node)

# bad
add_offense(node) { |corrector| corrector.replace(node.source_range, prefer) }
add_offense(node) { |corrector| corrector.insert_before(node.source_range, prefer) }
add_offense(node) { |corrector| corrector.insert_before_multi(node.source_range, prefer) }
add_offense(node) { |corrector| corrector.insert_after(node.source_range, prefer) }
add_offense(node) { |corrector| corrector.insert_after_multi(node.source_range, prefer) }
add_offense(node) { |corrector| corrector.swap(node.source_range, before, after) }

# good
add_offense(node) { |corrector| corrector.replace(node, prefer) }
add_offense(node) { |corrector| corrector.insert_before(node, prefer) }
add_offense(node) { |corrector| corrector.insert_before_multi(node, prefer) }
add_offense(node) { |corrector| corrector.insert_after(node, prefer) }
add_offense(node) { |corrector| corrector.insert_after_multi(node, prefer) }
add_offense(node) { |corrector| corrector.swap(node, before, after) }

Constants

MSG
RESTRICT_ON_SEND

Public Instance Methods

on_send(node) click to toggle source
# File lib/rubocop/cop/internal_affairs/redundant_source_range.rb, line 60
def on_send(node)
  return unless (source_range = redundant_source_range(node))
  return if source_range.receiver.send_type? && source_range.receiver.method?(:buffer)

  selector = source_range.loc.selector

  add_offense(selector) do |corrector|
    corrector.remove(source_range.loc.dot.join(selector))
  end
end