Expand description
Traits, helpers, and type definitions for core I/O functionality.
A subset from Rust std::io functionality supported for no-std.
MSRV:
- stable:
1.81.0 - nightly:
nightly-2022-08-24
NOTE: unstable configuration --cfg portable_io_unstable_all in Rust flags is required for Rust nightly
pre-2024-06-09 to enable error_in_core feature directive (stabilized in June 2024).
§Features
alloc(enabled by default) - mandatory feature - for alloc-related functionalityos-error(unstable feature) - support raw OS errors - with some KNOWN PANICS due to MISSING FUNCTIONALITYunix-iovec(unstable feature) - useiovecfromlibcfor data stored in IoSlice & IoSliceMut
§CFG options
portable_io_unstable_all- enable all unstable option(s):- size hint optimization for Read iterator - uses Rust unstable
min_specializationfeature
- size hint optimization for Read iterator - uses Rust unstable
To enable: use --cfg portable_io_unstable_all in Rust flags, set RUSTFLAGS env variable
when running cargo build or cargo test for example.
Modules§
- prelude
- The I/O Prelude.
Structs§
- Bytes
- An iterator over
u8values of a reader. - Chain
- Adapter to chain together two readers.
- Cursor
- A
Cursorwraps an in-memory buffer and provides it with aSeekimplementation. - Error
- The error type for I/O operations of the
Read,Write,Seek, and associated traits. - IoSlice
- A buffer type used with
Write::write_vectored. - IoSlice
Mut - A buffer type used with
Read::read_vectored. - Lines
- An iterator over the lines of an instance of
BufRead. - ReadBuf
- A wrapper around a byte buffer that is incrementally filled and initialized.
- Split
- An iterator over the contents of an instance of
BufReadsplit on a particular byte. - Take
- Reader adapter which limits the bytes read from an underlying reader.
Enums§
- Error
Kind - A list specifying general categories of I/O error.
- Seek
From - Enumeration of possible methods to seek within an I/O object.
Traits§
- BufRead
- A
BufReadis a type ofReader which has an internal buffer, allowing it to perform extra ways of reading. - Read
- The
Readtrait allows for reading bytes from a source. - Seek
- The
Seektrait provides a cursor which can be moved within a stream of bytes. - Write
- A trait for objects which are byte-oriented sinks.
Functions§
- read_
to_ string - Read all bytes from a reader into a new
String.