[−][src]Crate read_write_at
Abstraction of a file- or block derive-like object, data from/to which can be read/written at offsets.
There are alreay some analogues of those traits, including in libstd. But they are either platform-specific or tied to implementation of some algorithm.
This crate focuses on the abstraction itself, providing mostly wrappers and helper functions.
Traits are given in two varieties: with mutable &mut self
and immutable &self
methods.
libstd's platform-specific FileExt traits are forwarded for std::fs::File.
There is a generic wrapper for using Read+Seek
or Read+Write+Seek
objects
Immutable version of traits are implemented for RefCell
s or Mutex
s over mutable versions.
You may need to use DerefWrapper
it you use trait ojects although.
TODO:
- vectored IO
- async?
- reading to uninitialized buffers?
bytes
crate intergration?
Structs
DerefWrapper | A wrapper struct to allow accessing |
ReadWriteSeek | A wrapper that calls |
Traits
ReadAt | Read-only generalisation of |
ReadAtMut | Similar to |
ReadWriteAt | A combined ReadAt and WriteAt for trait objects. |
ReadWriteAtMut | A combined ReadAtMut and WriteAtMut for trait objects |
WriteAt | Write counterpart of |
WriteAtMut | Similar to |