Module B0_ui.Op

B000.Op interaction.

val select : reads:B0_std.Fpath.t list -> writes:B0_std.Fpath.t list -> ids:B000.Op.id list -> hashes:string list -> groups:string list -> B000.Op.t -> bool

select ~reads ~writes ~ids ~hashes ~groups o is true iff o reads a file in reads or writes a file in writes or has its id in ids, or has its hash in hashes or has is group in groups or if all these lists are empty.

val order : by:[ `Create | `Dur | `Wait | `Start ] -> B000.Op.t list -> B000.Op.t list

order ~by ops orders ops by by time.

val read_write_indices : B000.Op.t list -> B000.Op.Set.t B0_std.Fpath.Map.t * B000.Op.Set.t B0_std.Fpath.Map.t

read_write_indices ops is reads, writes with reads mapping file path to operations that reads them and writes mapping file paths to operations that write them.

val find_needs : ?⁠acc:B000.Op.Set.t -> recursive:bool -> writes:B000.Op.Set.t B0_std.Fpath.Map.t -> B000.Op.Set.t -> B000.Op.Set.t

find_needs ~recursive ~writes ~acc ops add to acc (defaults to B00.Op.Set.empty) the set of operations in the write index writes that need to be executed for the set of operations ops to be able to proceed. If recursive is false only direct dependencies are reported.

val find_enables : ?⁠acc:B000.Op.Set.t -> recursive:bool -> reads:B000.Op.Set.t B0_std.Fpath.Map.t -> B000.Op.Set.t -> B000.Op.Set.t

find_enables ~recursive ~writes ~acc ops add to acc (defaults to B00.Op.Set.empty) the set of operations in the read index reads that are enabled by the set of operations ops. If recursive is false only direct dependencies are reported.

val log_filter : reads:B0_std.Fpath.t list -> writes:B0_std.Fpath.t list -> ids:B000.Op.id list -> hashes:string list -> groups:string list -> needs:bool -> enables:bool -> recursive:bool -> revived:bool option -> order_by:[ `Create | `Dur | `Wait | `Start ] -> B000.Op.t list -> B000.Op.t list
val log_filter_cli : (B000.Op.t list -> B000.Op.t list) Cmdliner.Term.t