Expand description
Rust-Bitcoin IO Library
The std::io
module is not exposed in no-std
Rust so building no-std
applications which
require reading and writing objects via standard traits is not generally possible. Thus, this
library exists to export a minmal version of std::io
’s traits which we use in rust-bitcoin
so that we can support no-std
applications.
These traits are not one-for-one drop-ins, but are as close as possible while still implementing
std::io
’s traits without unnecessary complexity.
Macros§
- Because we cannot provide a blanket implementation of
std::io::Write
for all implementers of this crate’sio::Write
trait, we provide this macro instead.
Structs§
- Wraps an in memory reader providing the
position
function. - The
io
crate error type. - A bridging wrapper providing the IO traits for types that already implement
std
IO traits. - A sink to which all writes succeed. See
std::io::Sink
for more info. - Reader adapter which limits the bytes read from an underlying reader.
- A bridging wrapper providing the std traits for types that already implement our traits.
Enums§
- A minimal subset of
std::io::ErrorKind
which is used forError
. Note that, as withstd::io
, onlySelf::Interrupted
has defined semantics in this crate, all other variants are provided here only to provide higher-fidelity conversions to and fromstd::io::Error
.
Traits§
- A trait describing an input stream that uses an internal buffer when reading.
- A generic trait describing an input stream. See
std::io::Read
for more info. - A generic trait describing an output stream. See
std::io::Write
for more info.
Functions§
- Wraps a
std
IO type to implement the traits from this crate. - Wraps a mutable reference to
std
IO type to implement the traits from this crate. - Returns a sink to which all writes succeed. See
std::io::sink
for more info.
Type Aliases§
- Result type returned by functions in this crate.