Source

(** Stream module. See Stream_intf for more details *)openStream_intf(** Import the constructors *)type'adesc='aSpotlib.Spot.Stream.desc=|Consof'a*'adesclazy_t|Null(* CR jfuruse: Bad naming: It is a real creator of the stream, but called Extend. *)moduleExtend(Base:Base):Xwithtypepos=Base.Pos.tandtypeelem=Base.Elem.tandtypeattr=Base.Attr.t(** The functor [Extend] creates a stream module based on [Base] *)moduleMake(Base:Base):SwithtypePos.t=Base.Pos.tandtypeElem.t=Base.Elem.tandtypeAttr.t=Base.Attr.t(** Same as [Extend] but includes [Base : Base]. Do not use [Make] if your [Base] contains something more than [Stream_intf.Base], since the [Base] in the result of [Make] does not contain the extra things not in [Stream_intf.Base]. Instead, you must declare: module M = struct include Base include Extend(Base) end*)