module type SWARMMAKER = functor (R : EXPOSURE) -> sig end
Generic functor to create a module of type SWARM
. Any
implementation of a Swarm should have this signature.
type projection
type marker
type submarker
type matchinghalf
type splitmessage
type joinmessage
type matching = matchinghalf * matchinghalf
type bindhalf
type 'a
resident
The opaque type returned by the Swarm's shelter
method to
the harness to track specific residents.
type 'a
bindholder
FIXME: ...
class type notifier_type = object end
The notifier
is used to communicate from the resident to
the swarm.
type whichsplit =
| |
SplitFirst |
| |
SplitSecond |
type splitpart = projection ->
bindhalf ->
whichsplit * (projection * bindhalf)
type joinpart = whichsplit ->
projection ->
bindhalf -> projection * bindhalf
class type core = object end
The type of a resident core.
class base_core : object end
This class can be used as a base class for all residents.
class type [#core
] t = object end
The class of a Swarm object.
val make : unit -> #core t
Swarm constructor function.