Worker.MakeGroup
module WG = MakeGroup (Name) (Request)
defines a worker group all using the same Name
, Event
, etc. To instantiate a worker from a group, you must give the Types
parameter: WG.MakeWorker(Types)
. This defines a Worker
module of type T
. This last instantiation can be safely used as first class module.
The delayed application is there to prevent multiple side-effect executions in case of multiple instantiation. (Inner events trigger side effects.)
module Name : Mavryk_base.Worker_intf.NAME
module Request : Mavryk_base.Worker_intf.REQUEST
module MakeWorker
(Types : Mavryk_base.Worker_intf.TYPES) :
T
with module Name = Name
and module Request = Request
and module Types = Types