//! This module has extras that clash with names in [`futures-lite`],
//! which depends on us.
pub use crate::*;
/// Zips two futures, waiting for both to complete.
///
/// # Examples
///
/// ```
/// use futures_micro::prelude::zip;
///
/// # futures_lite::future::block_on(async {
/// let a = async { 1 };
/// let b = async { 2 };
///
/// assert_eq!(zip(a, b).await, (1, 2));
/// # })
/// ```
/// Returns the result of `left` or `right` future, preferring `left` if both are ready.