Monad.Of_monad3The same as S except the monad type has three arguments. The second and third are always just passed through.
module M : sig ... endmodule Let_syntax : sig ... endmodule Monad_infix : sig ... endSame as Infix, except the monad type has three arguments. The second and third are always just passed through.
val return : 'a -> ('a, _, _) M.t