module T2: sig
.. end
We use a phantom type to distinguish between throttles, which have
max_concurrent_jobs >= 1
, and sequencers, which have max_concurrent_jobs = 1
. All
operations are available on both. We make the distinction because it is sometimes
useful to know from the type of a throttle that it is a sequencer and that at most one
job can be running at a time.
type ('a, 'kind)
t
include Invariant.S2
val sexp_of_t : ('a -> Sexplib.Sexp.t) ->
('kind -> Sexplib.Sexp.t) -> ('a, 'kind) t -> Sexplib.Sexp.t