Crate embedded_io_async
source ·Expand description
embedded-io-async
Async IO traits for embedded systems.
This crate contains asynchronous versions of the embedded-io
traits and shares its scope and design goals.
This project is developed and maintained by the HAL team.
Optional Cargo features
std
: AddsFrom
impls to convert to/fromstd::io
structs, addsstd::error::Error
impls.alloc
: Adds blanket impls forBox
, addsWrite
impl toVec
.defmt-03
: Derivedefmt::Format
fromdefmt
0.3 for enums and structs.
Minimum Supported Rust Version (MSRV)
This crate requires Rust nightly newer than nightly-2022-11-22
, due to requiring support for
async fn
in traits (AFIT), which is not stable yet.
Keep in mind Rust nightlies can make backwards-incompatible changes to unstable features at any time.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Enums
- Possible kinds of errors.
- Error returned by
Read::read_exact
- Enumeration of possible methods to seek within an I/O object.
Traits
- Async buffered reader.
- Error trait.
- Base trait for all IO traits, defining the error type.
- Async reader.
- Get whether a reader is ready.
- Async seek within streams.
- Async writer.
- Get whether a writer is ready.