# File lib/ruby_parser_extras.rb, line 666 def new_while block, expr, pre line = [block && block.line, expr.line].compact.min block, pre = block.last, false if block && block[0] == :begin expr = cond expr result = if expr.first == :not then s(:until, expr.last, block, pre) else s(:while, expr, block, pre) end result.line = line result end