Crate netio [] [src]

Alternative implementation of many functions found in std::io, but suitable for blocking IO over networks.

The main reason for this crate is the handling of ErrorKind::Interrupted in std::io. Except for Read::read() and Write::write(), almost all functions will ignore interrupts and just retry.

This crate provides alternative implementations using a similar API but allow for interrupts whithout losing any content.

Most functions are based on BufRead instead of Read to ensure that no content is lost on retry.

Reexports

pub extern crate buf_redux;

Modules

buf_redux_reexport

A drop-in replacement for std::io::BufReader with more functionality.

mock

Structs

Bytes

An iterator over u8 values of a reader.

Chars

An iterator over the chars of a reader.

Collect

A reader adapter over an iterator of readers

Repeat

An adapter that restarts from the beginning after EOF is reached.

Retry

An adapter that retries reading/writing operations of the underlying reader or writer.

Split

An iterator over the contents of an instance of BufRead split on a particular byte.

Take

Adapter which limits the bytes read from / written to an underlying reader / writer.

Traits

BufRead

Alternative to std::io::BufRead

BufReadGrow

A BufReadGrow is a BufReader that has the ability to read additional data even if the buffer is not empty.

Read

Alternative to std::io::Read

Stream

Base trait for generic stream operations

Write

Alternative to std::io::Write

Functions

copy

Copies the entire content of a buffered reader into a writer.

copy_until

Copies the content of a buffered reader into a writer until a delimiter is reached.

Type Definitions

BufReader

Alternative to std::io::BufReader