package bistro

  1. Overview
  2. Docs
module DAG : Bistro_tdag.Tdag_sig.S with type task = Task.t
type time = float
type event =
  1. | Init of {
    1. dag : DAG.t;
    2. needed : Task.t list;
    3. already_done : Task.t list;
    }
  2. | Task_ready of Task.t
  3. | Task_started of Task.t * Allocator.resource
  4. | Task_ended of Task.result
  5. | Task_skipped of Task.t * [ `Done_already | `Missing_dep | `Allocation_error of string ]
class type logger = object ... end
type trace =
  1. | Run of {
    1. ready : time;
    2. start : time;
    3. end_ : time;
    4. outcome : Task.result;
    }
  2. | Skipped of [ `Done_already | `Missing_dep | `Allocation_error of string ]
type dry_run =
  1. | Dry_run of {
    1. nb_tasks : int;
    2. nb_goals : int;
    3. status : (Task.t * [ `TODO | `DONE ]) list;
    4. simulation : Task.t list;
    }
val run : ?logger:logger -> ?goals:Task.t list -> Task.config -> Allocator.t -> DAG.t -> trace Core_kernel.String.Map.t Lwt.t
val dry_run : ?goals:Task.t list -> Task.config -> DAG.t -> dry_run Lwt.t
val clean_run : Task.config -> DAG.t -> unit Lwt.t