package opam-solver

  1. Overview
  2. Docs

Module ActionGraph.ParallelSource

Sourcemodule G : OpamParallel.G with type t = t with type V.t = vertex
Sourceval iter : jobs:int -> command:(pred:(G.V.t * 'a) list -> G.V.t -> 'a OpamProcess.job) -> ?dry_run:bool -> ?pools:(G.V.t list * int) list -> G.t -> unit

Runs the job command ~pred v for every node v in a graph, in topological order using jobs concurrent processes. Separate (possibly intersecting) node pools can be specified, with a separate number of allowed processes. The jobs maximum applies to the remaining nodes.

The pred argument provided to the command function is the associative list of job results on direct predecessors of v.

Sourceval map : jobs:int -> command:(pred:(G.V.t * 'a) list -> G.V.t -> 'a OpamProcess.job) -> ?dry_run:bool -> ?pools:(G.V.t list * int) list -> G.t -> (G.V.t * 'a) list

Same as iter, but returns the results of all jobs as a vertex,result associative list

Sourceexception Errors of G.V.t list * (G.V.t * exn) list * G.V.t list

Raised when the command functions raised exceptions. Parameters are (successfully traversed nodes, exception nodes and corresponding exceptions, remaining nodes that weren't traversed)

Sourceexception Cyclic of G.V.t list list

Raised when the graph to traverse has cycles. Returns the cycles found.

OCaml

Innovation. Community. Security.