class Opal::Nodes::RedoNode

def compile

def compile
  if in_while?
    compile_while
  elsif scope.iter?
    compile_iter
  else
    push 'REDO()'
  end
end

def compile_iter

def compile_iter
  helper :slice
  push "return #{scope.identity}.apply(null, $slice.call(arguments))"
end

def compile_while

def compile_while
  while_loop[:use_redo] = true
  push "#{while_loop[:redo_var]} = true; continue;"
end