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 on_while(node)

def on_while(node)
  return unless node.multiline? && node.do?
  add_offense(node.loc.begin, message: format(MSG, keyword: node.keyword)) do |corrector|
    do_range = node.condition.source_range.end.join(node.loc.begin)
    corrector.remove(do_range)
  end
end