Module Async_smtp__.Multispool.Make.Expert

module Checked_out_entry : sig ... end

A spooled entry that is checked out, independent of any particular queue. No other process using this interface will be able to interfere with a Checked_out_entry.t (unlike an Entry.t, which may be stolen out from under you).

val checkout : Entry.t ‑> Checked_out_entry.t Async.Deferred.Or_error.t

Check out an Entry.t. Use checkout if you expect to be the only user of an Entry.t and it is an error if the Entry.t is grabbed by another process (or does not exist). See with_entry for a higher-level interface.

val checkout' : Entry.t ‑> [ `Not_found | `Ok of Checked_out_entry.t ] Async.Deferred.Or_error.t

Check out an Entry.t. Use checkout' if you expect that another process might race to grab an Entry.t. See with_entry' for a higher-level interface.

module Queue_reader : sig ... end