B00_cli.Op
B000.Op
interaction.
val find_needs : ?acc:B000.Op.Set.t -> recursive:bool -> writes:B000.Op.Set.t B00_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 B00_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.
The type for build operation queries. This is not simply predicate because of dependency selection.
val select : reads:B00_std.Fpath.t list -> writes:B00_std.Fpath.t list -> ids:B000.Op.id list -> hashes:B00_std.Hash.t list ->
marks:string list -> B000.Op.t -> bool
select ~reads ~writes ~ids ~hashes ~marks 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 its mark
in marks
or if all these selector lists are empty.
val select_deps : needs:bool -> enables:bool -> recursive:bool -> dom:B000.Op.t list ->
B000.Op.t list -> B000.Op.t list
select_deps ~needs ~enables ~recusrive ~dom ops
select the operation needs
and/or enables
of ops
recursive
ly in dom
. This is ops
if both needs
and enables
are false
.
val filter : revived:bool option ->
statuses:[ `Aborted | `Done | `Failed | `Waiting ] list ->
kinds:[ `Copy | `Delete | `Mkdir | `Notify | `Read | `Spawn | `Wait_files | `Write ] list
-> B000.Op.t -> bool
filter ~revived ~statuses ~kinds
is an operation filter for the given filters.
order ~by ops
orders ops
by by
time.
val query : select:(B000.Op.t -> bool) -> select_deps:(dom:B000.Op.t list -> B000.Op.t list -> B000.Op.t list) ->
filter:(B000.Op.t -> bool) -> order:(B000.Op.t list -> B000.Op.t list) -> query
query ~select ~select_deps ~filer ~order
is an operation query that select
s operations, their dependencies (or not) according to select_deps
, filters the result with filter
and orders them by order
.
val marks : ?opts:string list -> ?docs:string -> ?doc:string -> ?docv:string ->
unit -> string list Cmdliner.Term.t
val select_cli : ?docs:string -> ?marks:string list Cmdliner.Term.t -> unit -> (B000.Op.t -> bool) Cmdliner.Term.t
val select_deps_cli : ?docs:string -> unit -> (dom:B000.Op.t list -> B000.Op.t list -> B000.Op.t list) Cmdliner.Term.t
val filter_cli : ?docs:string -> unit -> (B000.Op.t -> bool) Cmdliner.Term.t
val order_cli : ?docs:string -> unit -> (B000.Op.t list -> B000.Op.t list) Cmdliner.Term.t
val query_cli : ?docs:string -> unit -> query Cmdliner.Term.t
val query_man : Cmdliner.Manpage.block list