functor (M : MONAD->
  sig
    type t
    val make :
      ?bufsize:int ->
      (Bytes.t -> int -> int -> int M.t) -> CCSexpM.MakeDecode.t
    val next : CCSexpM.MakeDecode.t -> CCSexpM.sexp CCSexpM.parse_result M.t
  end