package octez-protocol-alpha-libs

  1. Overview
  2. Docs
Octez protocol alpha libraries

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-18.0.tar.gz
sha256=dbc3b675aee59c2c574e5d0a771193a2ecfca31e7a5bc5aed66598080596ce1c
sha512=b97ed762b9d24744305c358af0d20f394376b64bfdd758dd4a81775326caf445caa57c4f6445da3dd6468ff492de18e4c14af6f374dfcbb7e4d64b7b720e5e2a

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_syntaxSource

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 return : 'a -> ('a, 'e) result Lwt.t
val return_unit : (unit, 'e) result Lwt.t
val return_none : ('a option, 'e) result Lwt.t
val return_some : 'a -> ('a option, 'e) result Lwt.t
val return_nil : ('a list, 'e) result Lwt.t
val return_true : (bool, 'e) result Lwt.t
val return_false : (bool, 'e) result Lwt.t
val fail : 'e -> ('a, 'e) result Lwt.t
val (let*) : ('a, 'e) result Lwt.t -> ('a -> ('b, 'e) result Lwt.t) -> ('b, 'e) result Lwt.t
val (let+) : ('a, 'e) result Lwt.t -> ('a -> 'b) -> ('b, 'e) result Lwt.t
val lwt_map_error : ('e -> 'f) -> ('a, 'e) result Lwt.t -> ('a, 'f) result Lwt.t
val (let*!) : 'a Lwt.t -> ('a -> 'b Lwt.t) -> 'b Lwt.t
val (let*?) : ('a, 'e) result -> ('a -> ('b, 'e) result Lwt.t) -> ('b, 'e) result Lwt.t
val join : (unit, 'e) result Lwt.t list -> (unit, 'e list) result Lwt.t
val all : ('a, 'e) result Lwt.t list -> ('a list, 'e list) result Lwt.t
val both : ('a, 'e) result Lwt.t -> ('b, 'e) result Lwt.t -> ('a * 'b, 'e list) result Lwt.t
val tzfail : 'error -> ('a, 'error Tezos_base.TzPervasives.TzTrace.trace) result Lwt.t
Sourceval 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.

Sourceval (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.

Sourceval (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.

Sourceval (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.

OCaml

Innovation. Community. Security.