Binds a function returning ``IOResult[a, b]`` container. .. code:: python >>> import anyio >>> from returns.io import IOResult, IOSuccess, IOFailure >>> from returns.future import FutureResult >>> def bind(inner_value: int) -> IOResult[int,
(
self,
function: Callable[
[_ValueType_co], IOResult[_NewValueType, _ErrorType_co]
],
)
| 932 | ) |
| 933 | |
| 934 | def bind_ioresult( |
| 935 | self, |
| 936 | function: Callable[ |
| 937 | [_ValueType_co], IOResult[_NewValueType, _ErrorType_co] |
| 938 | ], |
| 939 | ) -> 'FutureResult[_NewValueType, _ErrorType_co]': |
| 940 | """ |
| 941 | Binds a function returning ``IOResult[a, b]`` container. |
| 942 | |
| 943 | .. code:: python |
| 944 | |
| 945 | >>> import anyio |
| 946 | >>> from returns.io import IOResult, IOSuccess, IOFailure |
| 947 | >>> from returns.future import FutureResult |
| 948 | |
| 949 | >>> def bind(inner_value: int) -> IOResult[int, str]: |
| 950 | ... return IOSuccess(inner_value + 1) |
| 951 | |
| 952 | >>> assert anyio.run( |
| 953 | ... FutureResult.from_value(1).bind_ioresult(bind).awaitable, |
| 954 | ... ) == IOSuccess(2) |
| 955 | >>> assert anyio.run( |
| 956 | ... FutureResult.from_failure('a').bind_ioresult(bind).awaitable, |
| 957 | ... ) == IOFailure('a') |
| 958 | |
| 959 | """ |
| 960 | return FutureResult( |
| 961 | _future_result.async_bind_ioresult( |
| 962 | function, |
| 963 | self._inner_value, |
| 964 | ) |
| 965 | ) |
| 966 | |
| 967 | def bind_io( |
| 968 | self, |