Module Ringbuffer

module Ringbuffer: sig .. end
Operations on ringbuffers.

module type Elt = sig .. end
Signature for modules describing elements of ringbuffers (used by functors creating ringbuffers).
module type R = sig .. end
Signature for ringbuffer modules.
module Make: 
functor (E : Elt) -> R with type elt = E.t
Create a ringbuffer.
module Make_ext: 
functor (E : Elt) -> R with type elt = E.t
Create an extensible ringbuffer: the size of the ringbuffer is extended if write space is too small at some point.