Module Std.Opaque

Opaque type is like regular type, except that we can print or examine it in any way. So it can't be serialized or pretty-printed. An Opaque.Make can create an instances of such type.

module type S = sig ... end

Opaque type is like regular type, except that we can print or examine it in any way. So it can't be serialized or pretty-printed.

module Make (M : sig ... end) : S with type t := M.t

creates a module implementing Opaque interface.