Module Async_smtp__.Smtp_monad
type 'a t= ('a, Async_smtp__.Reject_or_error.t) Async.Deferred.Result.t
include Core.Monad.S with type 'a t := 'a t
include Base__.Monad_intf.S_without_syntax with type 'a t := 'a t
module Monad_infix : Base__.Monad_intf.Infix with type 'a t := 'a tval return : 'a -> 'a treturn vreturns the (trivial) computation that returns v.
val ignore_m : 'a t -> unit tignore_m tismap t ~f:(fun _ -> ()).ignore_mused to be calledignore, but we decided that was a bad name, because it shadowed the widely usedCaml.ignore. Some monads still dolet ignore = ignore_mfor historical reasons.
val exn : (Core.Exn.t -> _ t) Async_smtp__.With_info.with_rejectval error : (Core.Error.t -> _ t) Async_smtp__.With_info.with_rejectval error_string : (string -> _ t) Async_smtp__.With_info.with_rejectval errorf : (('a, unit, string, _ t) Core.format4 -> 'a) Async_smtp__.With_info.with_rejectval reject : (Async_smtp.Smtp_reply.t -> _ t) Async_smtp__.With_info.with_hereval tag : tag:string -> ('a t -> 'a t) Async_smtp__.With_info.with_maybe_hereval tag' : ?tag:string -> ('a t -> 'a t) Async_smtp__.With_info.with_maybe_hereval ok : 'a Async.Deferred.t -> 'a tHelpers to convert to an
'a t. Unliketry_with*below, these will not capture raised exceptions.
val of_or_error : ('a Async.Deferred.Or_error.t -> 'a t) Async_smtp__.With_info.with_tagval return_or_error : ('a Core.Or_error.t -> 'a t) Async_smtp__.With_info.with_tagval try_with : ((unit -> 'a Async.Deferred.t) -> 'a t) Async_smtp__.With_info.with_tagCapture any raised exceptions as
Errors.
val try_with_join : ((unit -> 'a t) -> 'a t) Async_smtp__.With_info.with_tagval try_with_or_error : ((unit -> 'a Async.Deferred.Or_error.t) -> 'a t) Async_smtp__.With_info.with_tag