2 unstable releases

0.1.0 Sep 4, 2020
0.0.0 Aug 31, 2020

#45 in #await

MPL-2.0 license

13KB
135 lines

A way to await on the output of either of two futures

img img img

Example

use futures_lite::future;
use futures_either::{either, Either};

let out = either(
    async { 42 },
    async { false },
).await;
assert_eq!(out, Either::Left(42));

let out = either(
    future::pending::<bool>(),
    async { 42 },
).await;
assert_eq!(out, Either::Right(42));

License

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.


lib.rs:

A way to await on the output of either of two futures.

Example

use futures_lite::future;
use futures_either::{either, Either};

# future::block_on(async {
#
let out = either(
    async { 42 },
    async { false },
).await;
assert_eq!(out, Either::Left(42));

let out = either(
    future::pending::<bool>(),
    async { 42 },
).await;
assert_eq!(out, Either::Right(42));
#
# });

Dependencies

~36KB