All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.rouz.flo.CurriedTaskBuilder Maven / Gradle / Ivy

package io.rouz.flo;

import java.util.List;

/**
 * TODO: document.
 */
public interface CurriedTaskBuilder {

  interface TaskBuilderC0 {
     TaskBuilderC in(Fn> task);
     TaskBuilderC, Z, Z> ins(Fn>> tasks);
  }

  interface TaskBuilderCV0 {
     TaskBuilderCV, Z> in(Fn> task);
     TaskBuilderCV, TaskContext.Value, Z> ins(Fn>> tasks);
  }

  interface TaskBuilderC {
    Task process(Fn1 code);
     TaskBuilderC, Z> in(Fn> task);
     TaskBuilderC, Fn1, Z> ins(Fn>> tasks);
  }

  interface TaskBuilderCV {
    Task process(Fn1> code);
     TaskBuilderCV, Z> in(Fn> task);
     TaskBuilderCV, Fn1, Z> ins(Fn>> tasks);
  }
}