class RuboCop::Cop::Style::WhileUntilDo

end
do_something(x.pop)
until x.empty?
# good
end
do_something(x.pop)
until x.empty? do
# bad
@example
end
do_something(x.pop)
while x.any?
# good
end
do_something(x.pop)
while x.any? do
# bad
@example
Checks for uses of ‘do` in multi-line `while/until` statements.

def autocorrect(node)

def autocorrect(node)
  do_range = node.condition.source_range.end.join(node.loc.begin)
  lambda do |corrector|
    corrector.remove(do_range)
  end
end

def handle(node)

def handle(node)
  return unless node.multiline? && node.do?
  add_offense(node, location: :begin,
                    message: format(MSG, keyword: node.keyword))
end

def on_until(node)

def on_until(node)
  handle(node)
end

def on_while(node)

def on_while(node)
  handle(node)
end