MCPcopy Index your code
hub / github.com/dry-python/returns / bind_result

Method bind_result

returns/future.py:900–932  ·  view source on GitHub ↗

Binds a function returning ``Result[a, b]`` container. .. code:: python >>> import anyio >>> from returns.io import IOSuccess, IOFailure >>> from returns.result import Result, Success >>> from returns.future import FutureResult >>

(
        self,
        function: Callable[
            [_ValueType_co], Result[_NewValueType, _ErrorType_co]
        ],
    )

Source from the content-addressed store, hash-verified

898 )
899
900 def bind_result(
901 self,
902 function: Callable[
903 [_ValueType_co], Result[_NewValueType, _ErrorType_co]
904 ],
905 ) -> 'FutureResult[_NewValueType, _ErrorType_co]':
906 """
907 Binds a function returning ``Result[a, b]`` container.
908
909 .. code:: python
910
911 >>> import anyio
912 >>> from returns.io import IOSuccess, IOFailure
913 >>> from returns.result import Result, Success
914 >>> from returns.future import FutureResult
915
916 >>> def bind(inner_value: int) -> Result[int, str]:
917 ... return Success(inner_value + 1)
918
919 >>> assert anyio.run(
920 ... FutureResult.from_value(1).bind_result(bind).awaitable,
921 ... ) == IOSuccess(2)
922 >>> assert anyio.run(
923 ... FutureResult.from_failure('a').bind_result(bind).awaitable,
924 ... ) == IOFailure('a')
925
926 """
927 return FutureResult(
928 _future_result.async_bind_result(
929 function,
930 self._inner_value,
931 )
932 )
933
934 def bind_ioresult(
935 self,

Callers

nothing calls this directly

Calls 1

FutureResultClass · 0.85

Tested by

no test coverage detected