async-select-all 0.1.0

A futures library adapter for selecting over a list of futures.
Documentation
# async-select-all

[![Apache-2.0 licensed](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](LICENSE)
[![Minimum rustc version](https://img.shields.io/badge/rustc-1.37+-lightgray.svg)](README.md#rust-version-requirements)
[![Crate](https://img.shields.io/crates/v/async-select-all.svg)](https://crates.io/crates/async-select-all)
[![API](https://docs.rs/async-select-all/badge.svg)](https://docs.rs/async-select-all)

A futures library adapter for selecting over a list of futures.

## Usage

```Rust
use async_select_all::SelectAll;
use futures::executor::block_on;

async fn inc(i: i32) -> i32 {
    i + 1
}

fn main() {
    let futures = vec![inc(10), inc(5)];
    let mut select_all = SelectAll::from(futures);
    let vec = block_on(async {
        let mut vec = Vec::with_capacity(select_all.len());
        while !select_all.is_empty() {
            let val = select_all.select().await;
            vec.push(val)
        }
        vec.sort();
        vec
    });
    assert_eq!(vec, vec![6, 11]);
}
```

## Rust version requirements

`async-select-all` works on rust 1.37 or later.

## License

This project is licensed under the Apache-2.0 license ([LICENSE](LICENSE) or http://www.apache.org/licenses/LICENSE-2.0).

## Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in `async-select-all` by you, shall be licensed as Apache-2.0, without any additional
terms or conditions.