Struct io_arrays::ArrayWriter
source · pub struct ArrayWriter { /* private fields */ }
Expand description
A random-access output sink.
Implementations§
source§impl ArrayWriter
impl ArrayWriter
sourcepub fn file<Filelike: IntoFilelike + Write + Seek>(filelike: Filelike) -> Self
pub fn file<Filelike: IntoFilelike + Write + Seek>(filelike: Filelike) -> Self
Convert a File
into a ArrayWriter
.
The file must not be opened in append mode.
Trait Implementations§
source§impl Array for &ArrayWriter
impl Array for &ArrayWriter
source§impl Array for ArrayWriter
impl Array for ArrayWriter
source§impl AsFd for ArrayWriter
impl AsFd for ArrayWriter
source§fn as_fd(&self) -> BorrowedFd<'_>
fn as_fd(&self) -> BorrowedFd<'_>
Borrows the file descriptor. Read more
source§impl AsRawFd for ArrayWriter
impl AsRawFd for ArrayWriter
source§impl Debug for ArrayWriter
impl Debug for ArrayWriter
source§impl WriteAt for &ArrayWriter
impl WriteAt for &ArrayWriter
source§fn write_at(&mut self, buf: &[u8], offset: u64) -> Result<usize>
fn write_at(&mut self, buf: &[u8], offset: u64) -> Result<usize>
Writes a number of bytes starting from a given offset. Read more
source§fn write_all_at(&mut self, buf: &[u8], offset: u64) -> Result<()>
fn write_all_at(&mut self, buf: &[u8], offset: u64) -> Result<()>
Attempts to write an entire buffer starting from a given offset. Read more
source§fn write_vectored_at(
&mut self,
bufs: &[IoSlice<'_>],
offset: u64
) -> Result<usize>
fn write_vectored_at( &mut self, bufs: &[IoSlice<'_>], offset: u64 ) -> Result<usize>
Is to
write_vectored
what write_at
is to write
.source§fn write_all_vectored_at(
&mut self,
bufs: &mut [IoSlice<'_>],
offset: u64
) -> Result<()>
fn write_all_vectored_at( &mut self, bufs: &mut [IoSlice<'_>], offset: u64 ) -> Result<()>
Is to
write_all_vectored
what write_all_at
is to write_all
.source§fn is_write_vectored_at(&self) -> bool
fn is_write_vectored_at(&self) -> bool
Determines if
Self
has an efficient write_vectored_at
implementation.source§impl WriteAt for ArrayWriter
impl WriteAt for ArrayWriter
source§fn write_at(&mut self, buf: &[u8], offset: u64) -> Result<usize>
fn write_at(&mut self, buf: &[u8], offset: u64) -> Result<usize>
Writes a number of bytes starting from a given offset. Read more
source§fn write_all_at(&mut self, buf: &[u8], offset: u64) -> Result<()>
fn write_all_at(&mut self, buf: &[u8], offset: u64) -> Result<()>
Attempts to write an entire buffer starting from a given offset. Read more
source§fn write_vectored_at(
&mut self,
bufs: &[IoSlice<'_>],
offset: u64
) -> Result<usize>
fn write_vectored_at( &mut self, bufs: &[IoSlice<'_>], offset: u64 ) -> Result<usize>
Is to
write_vectored
what write_at
is to write
.source§fn write_all_vectored_at(
&mut self,
bufs: &mut [IoSlice<'_>],
offset: u64
) -> Result<()>
fn write_all_vectored_at( &mut self, bufs: &mut [IoSlice<'_>], offset: u64 ) -> Result<()>
Is to
write_all_vectored
what write_all_at
is to write_all
.source§fn is_write_vectored_at(&self) -> bool
fn is_write_vectored_at(&self) -> bool
Determines if
Self
has an efficient write_vectored_at
implementation.Auto Trait Implementations§
impl RefUnwindSafe for ArrayWriter
impl Send for ArrayWriter
impl Sync for ArrayWriter
impl Unpin for ArrayWriter
impl UnwindSafe for ArrayWriter
Blanket Implementations§
source§impl<T> AsFilelike for Twhere
T: AsFd,
impl<T> AsFilelike for Twhere
T: AsFd,
source§fn as_filelike(&self) -> BorrowedFd<'_>
fn as_filelike(&self) -> BorrowedFd<'_>
Borrows the reference. Read more
source§fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target>where
Target: FilelikeViewType,
fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target>where
Target: FilelikeViewType,
Return a borrowing view of a resource which dereferences to a
&Target
. Read moresource§impl<T> AsGrip for Twhere
T: AsFd,
impl<T> AsGrip for Twhere
T: AsFd,
source§fn as_grip(&self) -> BorrowedFd<'_>
fn as_grip(&self) -> BorrowedFd<'_>
Extracts the grip.
source§impl<T> AsRawFilelike for Twhere
T: AsRawFd,
impl<T> AsRawFilelike for Twhere
T: AsRawFd,
source§fn as_raw_filelike(&self) -> i32
fn as_raw_filelike(&self) -> i32
Returns the raw value.
source§impl<T> AsRawGrip for Twhere
T: AsRawFd,
impl<T> AsRawGrip for Twhere
T: AsRawFd,
source§fn as_raw_grip(&self) -> i32
fn as_raw_grip(&self) -> i32
Extracts the raw grip.
source§impl<T> AsRawSocketlike for Twhere
T: AsRawFd,
impl<T> AsRawSocketlike for Twhere
T: AsRawFd,
source§fn as_raw_socketlike(&self) -> i32
fn as_raw_socketlike(&self) -> i32
Returns the raw value.
source§impl<T> AsSocketlike for Twhere
T: AsFd,
impl<T> AsSocketlike for Twhere
T: AsFd,
source§fn as_socketlike(&self) -> BorrowedFd<'_>
fn as_socketlike(&self) -> BorrowedFd<'_>
Borrows the reference.
source§fn as_socketlike_view<Target>(&self) -> SocketlikeView<'_, Target>where
Target: SocketlikeViewType,
fn as_socketlike_view<Target>(&self) -> SocketlikeView<'_, Target>where
Target: SocketlikeViewType,
Return a borrowing view of a resource which dereferences to a
&Target
. Read moresource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> FileIoExt for Twhere
T: AsFilelike + IoExt,
impl<T> FileIoExt for Twhere
T: AsFilelike + IoExt,
source§fn advise(&self, offset: u64, len: u64, advice: Advice) -> Result<(), Error>
fn advise(&self, offset: u64, len: u64, advice: Advice) -> Result<(), Error>
Announce the expected access pattern of the data at the given offset.
source§fn allocate(&self, offset: u64, len: u64) -> Result<(), Error>
fn allocate(&self, offset: u64, len: u64) -> Result<(), Error>
Allocate space in the file, increasing the file size as needed, and
ensuring that there are no holes under the given range.
source§fn read_at(&self, buf: &mut [u8], offset: u64) -> Result<usize, Error>
fn read_at(&self, buf: &mut [u8], offset: u64) -> Result<usize, Error>
Reads a number of bytes starting from a given offset. Read more
source§fn read_exact_at(&self, buf: &mut [u8], offset: u64) -> Result<(), Error>
fn read_exact_at(&self, buf: &mut [u8], offset: u64) -> Result<(), Error>
Reads the exact number of byte required to fill buf from the given
offset. Read more
source§fn read_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<usize, Error>
fn read_vectored_at( &self, bufs: &mut [IoSliceMut<'_>], offset: u64 ) -> Result<usize, Error>
Is to
read_vectored
what read_at
is to read
.source§fn is_read_vectored_at(&self) -> bool
fn is_read_vectored_at(&self) -> bool
Determines if this
FileIoExt
implementation has an efficient
read_vectored_at
implementation.source§fn read_to_end_at(&self, buf: &mut Vec<u8>, offset: u64) -> Result<usize, Error>
fn read_to_end_at(&self, buf: &mut Vec<u8>, offset: u64) -> Result<usize, Error>
Read all bytes, starting at
offset
, until EOF in this source, placing
them into buf
.source§fn read_to_string_at(
&self,
buf: &mut String,
offset: u64
) -> Result<usize, Error>
fn read_to_string_at( &self, buf: &mut String, offset: u64 ) -> Result<usize, Error>
Read all bytes, starting at
offset
, until EOF in this source,
appending them to buf
.source§fn write_at(&self, buf: &[u8], offset: u64) -> Result<usize, Error>
fn write_at(&self, buf: &[u8], offset: u64) -> Result<usize, Error>
Writes a number of bytes starting from a given offset. Read more
source§fn write_all_at(&self, buf: &[u8], offset: u64) -> Result<(), Error>
fn write_all_at(&self, buf: &[u8], offset: u64) -> Result<(), Error>
Attempts to write an entire buffer starting from a given offset. Read more
source§fn write_vectored_at(
&self,
bufs: &[IoSlice<'_>],
offset: u64
) -> Result<usize, Error>
fn write_vectored_at( &self, bufs: &[IoSlice<'_>], offset: u64 ) -> Result<usize, Error>
Is to
write_vectored
what write_at
is to write
.source§fn is_write_vectored_at(&self) -> bool
fn is_write_vectored_at(&self) -> bool
Determines if this
FileIoExt
implementation has an efficient
write_vectored_at
implementation.source§fn append(&self, buf: &[u8]) -> Result<usize, Error>
fn append(&self, buf: &[u8]) -> Result<usize, Error>
Writes a number of bytes at the end of a file. Read more
source§fn append_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
fn append_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
Is to
append
what write_vectored
is to write
.source§fn is_append_vectored(&self) -> bool
fn is_append_vectored(&self) -> bool
Determines if this
FileIoExt
implementation has an efficient
append_vectored
implementation.source§fn seek(&self, pos: SeekFrom) -> Result<u64, Error>
fn seek(&self, pos: SeekFrom) -> Result<u64, Error>
Seek to an offset, in bytes, in a stream. Read more
source§fn stream_position(&self) -> Result<u64, Error>
fn stream_position(&self) -> Result<u64, Error>
Returns the current seek position from the start of the stream. Read more
source§fn read_exact_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<(), Error>
fn read_exact_vectored_at( &self, bufs: &mut [IoSliceMut<'_>], offset: u64 ) -> Result<(), Error>
Is to
read_exact_vectored
what read_exact_at
is to read_exact
.source§fn write_all_vectored_at(
&self,
bufs: &mut [IoSlice<'_>],
offset: u64
) -> Result<(), Error>
fn write_all_vectored_at( &self, bufs: &mut [IoSlice<'_>], offset: u64 ) -> Result<(), Error>
Is to
write_all_vectored
what write_all_at
is to write_all
.source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self
file descriptor.source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self
file descriptor. Read moresource§impl<T> IoExt for Twhere
T: AsFilelike + AsSocketlike,
impl<T> IoExt for Twhere
T: AsFilelike + AsSocketlike,
source§fn read(&self, buf: &mut [u8]) -> Result<usize, Error>
fn read(&self, buf: &mut [u8]) -> Result<usize, Error>
Pull some bytes from this source into the specified buffer, returning
how many bytes were read. Read more
source§fn read_exact(&self, buf: &mut [u8]) -> Result<(), Error>
fn read_exact(&self, buf: &mut [u8]) -> Result<(), Error>
Read the exact number of bytes required to fill
buf
. Read moresource§fn read_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
fn read_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
Like
read
, except that it reads into a slice of buffers. Read moresource§fn read_to_end(&self, buf: &mut Vec<u8>) -> Result<usize, Error>
fn read_to_end(&self, buf: &mut Vec<u8>) -> Result<usize, Error>
Read all bytes until EOF in this source, placing them into
buf
. Read moresource§fn read_to_string(&self, buf: &mut String) -> Result<usize, Error>
fn read_to_string(&self, buf: &mut String) -> Result<usize, Error>
Read all bytes until EOF in this source, appending them to
buf
. Read moresource§fn peek(&self, buf: &mut [u8]) -> Result<usize, Error>
fn peek(&self, buf: &mut [u8]) -> Result<usize, Error>
Read bytes from the current position without advancing the current
position. Read more
source§fn write(&self, buf: &[u8]) -> Result<usize, Error>
fn write(&self, buf: &[u8]) -> Result<usize, Error>
Write a buffer into this writer, returning how many bytes were written. Read more
source§fn write_all(&self, buf: &[u8]) -> Result<(), Error>
fn write_all(&self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
source§fn write_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
fn write_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
Like
write
, except that it writes from a slice of buffers. Read moresource§fn flush(&self) -> Result<(), Error>
fn flush(&self) -> Result<(), Error>
Flush this output stream, ensuring that all intermediately buffered
contents reach their destination. Read more
source§fn write_fmt(&self, fmt: Arguments<'_>) -> Result<(), Error>
fn write_fmt(&self, fmt: Arguments<'_>) -> Result<(), Error>
Writes a formatted string into this writer, returning any error
encountered. Read more
source§fn read_exact_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<(), Error>
fn read_exact_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<(), Error>
Is to
read_vectored
what read_exact
is to read
.