package octez-protocol-alpha-libs
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053
doc/octez-protocol-alpha-libs.test-helpers/Tezos_alpha_test_helpers/Lwt_result_wrap_syntax/index.html
Module Tezos_alpha_test_helpers.Lwt_result_wrap_syntax
Source
Extends the Lwt_result_syntax
with additional utilities for wrapping results produced by the protocol, i.e. Environment.Error_monad.tzresult
, to tzresult Lwt.t
values used in the tests.
The added utilities are binding operators. They use the same symbols as the ones from Lwt_result_syntax
with an added @
character. This character symbolizes the ewrapping
of the internal error monad type in a shell error.
include module type of Tezos_base.TzPervasives.Lwt_result_syntax
include module type of Tezos_error_monad.TzLwtreslib.Monad.Lwt_result_syntax
val tzfail :
'error ->
('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val (and*) :
('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('a * 'b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val (and+) :
('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('a * 'b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val tzjoin :
(unit, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t list ->
(unit, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val tzall :
('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t list ->
('a list, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val tzboth :
('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t ->
('a * 'b, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
val wrap :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult Lwt.t ->
'a Tezos_base.TzPervasives.tzresult Lwt.t
wrap res
maps the result type contained in res
to a tzresult value.
val (let@) :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult ->
('a Tezos_base.TzPervasives.tzresult -> 'b) ->
'b
let@ x = m in f x
is equivalent to let x = Environment.wrap_tzresult m in f x
val (let*@) :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult Lwt.t ->
('a -> 'b Tezos_base.TzPervasives.tzresult Lwt.t) ->
'b Tezos_base.TzPervasives.tzresult Lwt.t
let*@ x = m in f x
is equivalent to let* x = wrap m in f x
.
Mnemonic: @
"wraps" a protocol error in a shell error.
val (let*?@) :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult ->
('a -> 'b Tezos_base.TzPervasives.tzresult Lwt.t) ->
'b Tezos_base.TzPervasives.tzresult Lwt.t
let*?@ x = m in f x
is equivalent to let*? x = Environment.wrap_tzresult m in f x
.
Mnemonic: @
"wraps" a protocol error in a shell error.
val (let*!@) :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult Lwt.t ->
('a Tezos_base.TzPervasives.tzresult -> 'b Lwt.t) ->
'b Lwt.t
let*!@ x = m in f x
is equivalent to let*! x = wrap m in f x
.
Mnemonic: @
"wraps" a protocol error in a shell error.
val (let+@) :
'a Tezos_protocol_alpha.Environment.Error_monad.tzresult Lwt.t ->
('a -> 'b) ->
'b Tezos_base.TzPervasives.tzresult Lwt.t
let+@ x = m in f x
is equivalent to let+ x = wrap m in f x
.
Mnemonic: @
"wraps" a protocol error in a shell error.