class Task {

  public Task<Void> continueWhile(Callable<Boolean> predicate,
      Continuation<Void, Task<Void>> continuation) {
    return continueWhile(predicate, continuation, IMMEDIATE_EXECUTOR, null);
  }

    Task();
  private  Task(TResult result);
  private  Task(boolean cancelled);

}