module Swarm: sig end
More precisely, a Swarm is an object of type 'a
SomeSwarmImplementation(SomeExposure).t, where list
SomeSwarmImplementation is is functor of type SWARMMAKER, which
contains the actual implementation of a Swarm. (For instance, this
module currently defines the SerializedSwarm.)SomeExposure is a module of type EXPOSURE, which varies
according to the usage. (For instance, incubators define an
exposure to contain strings and regular expressions.)SomeSwarmImplementation(SomeExposure) is a module of type SWARM.SomeSwarmImplementation.core. When added to a Swarm - sheltered - they acquire the opaque type 'a resident. The original
resident definition class, which extends core, is called the resident core.testing/test_swarm.ml for simple examples of how to use this
module.
In the Monod project, this module is used to define elements of the
next layer in the design stack, the Incubator - see the Incubator
module.
module type EXPOSURE = sig endexception No_matching_marker
get_full_marker is called with an inactive projection.exception Invalid_matchinghalf
unimate method when the
matchinghalf passed as parameter is invalid (for instance, if it's
stale.exception No_such_binding
transfer or split.module type SWARM = sig endmodule type SWARMMAKER = functor (R : EXPOSURE) -> sig endSWARM.
module SerializedSwarm: SWARMMAKER