Crate io_extras

source ·
Expand description

This crate provides a few miscellaneous utilities related to I/O:

  • HandleOrSocket types and traits for Windows, which abstract over Windows *Handle* and their corresponding Windows *Socket* types and traits.

  • Grip types and traits, which abstract over the aforementioned Windows HandleOrSocket types and traits and their corresponding non-Windows Fd types and traits.

  • OwnedReadable, OwnedWriteable, BorrowedReadable, BorrowedWriteable, RawReadable and RawWriteable, which adapt a raw Fd/Handle to implement the Read and Write traits, respectively.

  • ReadWrite traits, and supporting types, which provide abstractions over types with one or two I/O resources, for reading and for writing.


  • BorrowedReadable and BorrowedWriteable.
  • “Grip” is an abstraction over “Fd” and “HandleOrSocket”. “Handle” would be the obvious term, but that has a more specific meaning on Windows.
  • OS-specific functionality.
  • OwnedReadable and OwnedWriteable.
  • RawReadable and RawWriteable.
  • Traits for working with types that may have up to two I/O objects.