pub struct TokioCompatFile { /* private fields */ }
Expand description
File that implements AsyncRead
, AsyncBufRead
, AsyncSeek
and
AsyncWrite
, which is compatible with
tokio::fs::File
.
Implementations§
Source§impl TokioCompatFile
impl TokioCompatFile
Sourcepub fn new(inner: File) -> Self
pub fn new(inner: File) -> Self
Create a TokioCompatFile
using DEFAULT_BUFLEN
.
Sourcepub fn with_capacity(inner: File, buffer_len: NonZeroUsize) -> Self
pub fn with_capacity(inner: File, buffer_len: NonZeroUsize) -> Self
Create a TokioCompatFile
.
buffer_len
- buffer len to be used inAsyncBufRead
and the minimum length to read inAsyncRead
.
Sourcepub fn into_inner(self) -> File
pub fn into_inner(self) -> File
Return the inner File
.
Sourcepub fn capacity(&self) -> usize
pub fn capacity(&self) -> usize
Return capacity of the internal buffer
Note that if there are pending requests, then the actual capacity might be more than the returned value.
Sourcepub fn reserve(&mut self, new_cap: usize)
pub fn reserve(&mut self, new_cap: usize)
Reserve the capacity of the internal buffer for at least cap
bytes.
Sourcepub fn shrink_to(&mut self, new_cap: usize)
pub fn shrink_to(&mut self, new_cap: usize)
Shrink the capacity of the internal buffer to at most cap
bytes.
Sourcepub async fn fill_buf(self: Pin<&mut Self>) -> Result<(), Error>
pub async fn fill_buf(self: Pin<&mut Self>) -> Result<(), Error>
This function is a low-level call.
It needs to be paired with the consume
method or
TokioCompatFile::consume_and_return_buffer
to function properly.
When calling this method, none of the contents will be “read” in the sense that later calling read may return the same contents.
As such, you must consume the corresponding bytes using the methods listed above.
An empty buffer returned indicates that the stream has reached EOF.
This function does not change the offset into the file.
Sourcepub fn consume_and_return_buffer(&mut self, amt: usize) -> Bytes
pub fn consume_and_return_buffer(&mut self, amt: usize) -> Bytes
This can be used together with AsyncBufRead
implementation for
TokioCompatFile
or TokioCompatFile::fill_buf
or
TokioCompatFile::read_into_buffer
to avoid copying data.
Return empty Bytes
on EOF.
This function does change the offset into the file.
Sourcepub fn poll_read_into_buffer(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
amt: NonZeroU32,
) -> Poll<Result<(), Error>>
pub fn poll_read_into_buffer( self: Pin<&mut Self>, cx: &mut Context<'_>, amt: NonZeroU32, ) -> Poll<Result<(), Error>>
amt
- Amount of data to read into the buffer.
This function is a low-level call.
It needs to be paired with the consume
method or
TokioCompatFile::consume_and_return_buffer
to function properly.
When calling this method, none of the contents will be “read” in the sense that later calling read may return the same contents.
As such, you must consume the corresponding bytes using the methods listed above.
An empty buffer returned indicates that the stream has reached EOF.
This function does not change the offset into the file.
Sourcepub async fn read_into_buffer(
self: Pin<&mut Self>,
amt: NonZeroU32,
) -> Result<(), Error>
pub async fn read_into_buffer( self: Pin<&mut Self>, amt: NonZeroU32, ) -> Result<(), Error>
amt
- Amount of data to read into the buffer.
This function is a low-level call.
It needs to be paired with the consume
method or
TokioCompatFile::consume_and_return_buffer
to function properly.
When calling this method, none of the contents will be “read” in the sense that later calling read may return the same contents.
As such, you must consume the corresponding bytes using the methods listed above.
An empty buffer returned indicates that the stream has reached EOF.
This function does not change the offset into the file.
Sourcepub fn as_mut_file(self: Pin<&mut Self>) -> &mut File
pub fn as_mut_file(self: Pin<&mut Self>) -> &mut File
Return the inner file
Methods from Deref<Target = File>§
Sourcepub async fn set_len(&mut self, size: u64) -> Result<(), Error>
pub async fn set_len(&mut self, size: u64) -> Result<(), Error>
Truncates or extends the underlying file, updating the size of this file to become size.
If the size is less than the current file’s size, then the file will be shrunk.
If it is greater than the current file’s size, then the file will be extended to size and have all of the intermediate data filled in with 0s.
§Cancel Safety
This function is cancel safe.
Sourcepub async fn sync_all(&mut self) -> Result<(), Error>
pub async fn sync_all(&mut self) -> Result<(), Error>
Attempts to sync all OS-internal metadata to disk.
This function will attempt to ensure that all in-core data reaches the filesystem before returning.
§Precondition
Require extension fsync
You can check it with Sftp::support_fsync
.
§Cancel Safety
This function is cancel safe.
Sourcepub async fn set_permissions(&mut self, perm: Permissions) -> Result<(), Error>
pub async fn set_permissions(&mut self, perm: Permissions) -> Result<(), Error>
Sourcepub async fn metadata(&mut self) -> Result<MetaData, Error>
pub async fn metadata(&mut self) -> Result<MetaData, Error>
Queries metadata about the underlying file.
Sourcepub async fn read(
&mut self,
n: u32,
buffer: BytesMut,
) -> Result<Option<BytesMut>, Error>
pub async fn read( &mut self, n: u32, buffer: BytesMut, ) -> Result<Option<BytesMut>, Error>
n
- number of bytes to read in
If the File
has reached EOF or n == 0
, then None
is returned.
NOTE that the returned buffer might be smaller than n
.
Sourcepub async fn write(&mut self, buf: &[u8]) -> Result<usize, Error>
pub async fn write(&mut self, buf: &[u8]) -> Result<usize, Error>
Write data into the file.
NOTE that this API might only write part of the buf
.
Sourcepub async fn write_vectorized(
&mut self,
bufs: &[IoSlice<'_>],
) -> Result<usize, Error>
pub async fn write_vectorized( &mut self, bufs: &[IoSlice<'_>], ) -> Result<usize, Error>
Write from multiple buffer at once.
NOTE that this API might only write part of the buf
.
Sourcepub async fn write_zero_copy(
&mut self,
bytes_slice: &[Bytes],
) -> Result<usize, Error>
pub async fn write_zero_copy( &mut self, bytes_slice: &[Bytes], ) -> Result<usize, Error>
Zero copy write.
NOTE that this API might only write part of the buf
.
Sourcepub async fn read_all(
&mut self,
n: usize,
buffer: BytesMut,
) -> Result<BytesMut, Error>
pub async fn read_all( &mut self, n: usize, buffer: BytesMut, ) -> Result<BytesMut, Error>
n
- number of bytes to read in.
If n == 0
or EOF is reached, then buffer
is returned unchanged.
§Cancel Safety
This function is cancel safe.
Sourcepub async fn write_all_vectorized(
&mut self,
bufs: &mut [IoSlice<'_>],
) -> Result<(), Error>
pub async fn write_all_vectorized( &mut self, bufs: &mut [IoSlice<'_>], ) -> Result<(), Error>
Sourcepub async fn copy_to(
&mut self,
dst: &mut Self,
n: NonZeroU64,
) -> Result<(), Error>
pub async fn copy_to( &mut self, dst: &mut Self, n: NonZeroU64, ) -> Result<(), Error>
Copy n
bytes of data from self
to dst
.
The server MUST copy the data exactly as if the data is copied using a series of read and write.
There are no protocol restictions on this operation; however, the server MUST ensure that the user does not exceed quota, etc. The server is, as always, free to complete this operation out of order if it is too large to complete immediately, or to refuse a request that is too large.
After a successful function call, the offset of self
and dst
are increased by n
.
§Precondition
Requires extension copy-data
.
For openssh-portable, this is available from V_9_0_P1.
You can check it with Sftp::support_copy
.
If the extension is not supported by the server, this function
would fail with Error::UnsupportedExtension
.
Sourcepub async fn copy_all_to(&mut self, dst: &mut Self) -> Result<(), Error>
pub async fn copy_all_to(&mut self, dst: &mut Self) -> Result<(), Error>
Copy data from self
to dst
until EOF is encountered.
The server MUST copy the data exactly as if the data is copied using a series of read and write.
There are no protocol restictions on this operation; however, the server MUST ensure that the user does not exceed quota, etc. The server is, as always, free to complete this operation out of order if it is too large to complete immediately, or to refuse a request that is too large.
After a successful function call, the offset of self
and dst
are unchanged.
§Precondition
Requires extension copy-data
.
For openssh-portable, this is available from V_9_0_P1.
You can check it with Sftp::support_copy
.
If the extension is not supported by the server, this function
would fail with Error::UnsupportedExtension
.
Sourcepub fn as_mut_file(&mut self) -> &mut File
pub fn as_mut_file(&mut self) -> &mut File
No-op to be compatible with TokioCompatFile::as_mut_file
Trait Implementations§
Source§impl AsyncBufRead for TokioCompatFile
impl AsyncBufRead for TokioCompatFile
Source§impl AsyncRead for TokioCompatFile
impl AsyncRead for TokioCompatFile
Source§impl AsyncSeek for TokioCompatFile
impl AsyncSeek for TokioCompatFile
Source§impl AsyncWrite for TokioCompatFile
impl AsyncWrite for TokioCompatFile
TokioCompatFile::poll_write
only writes data to the buffer.
TokioCompatFile::poll_write
and
TokioCompatFile::poll_write_vectored
would send at most one
sftp request.
It is perfectly safe to buffer requests and send them in one go, since sftp v3 guarantees that requests on the same file handler is processed sequentially.
NOTE that these writes cannot be cancelled.
One maybe obvious note when using append-mode:
make sure that all data that belongs together is written to the file in one operation.
This can be done by concatenating strings before passing them to
AsyncWrite::poll_write
or AsyncWrite::poll_write_vectored
and
calling AsyncWrite::poll_flush
on TokioCompatFile
when the message
is complete.
Calling AsyncWrite::poll_flush
on TokioCompatFile
would wait on
writes in the order they are sent.
Source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
buf
into the object. Read moreSource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
Source§fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
Source§fn poll_write_vectored(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>],
) -> Poll<Result<usize>>
fn poll_write_vectored( self: Pin<&mut Self>, cx: &mut Context<'_>, bufs: &[IoSlice<'_>], ) -> Poll<Result<usize>>
poll_write
, except that it writes from a slice of buffers. Read moreSource§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
poll_write_vectored
implementation. Read moreSource§impl Clone for TokioCompatFile
impl Clone for TokioCompatFile
Creates a new TokioCompatFile
instance that shares the
same underlying file handle as the existing File instance.
Reads, writes, and seeks can be performed independently.
Source§impl Debug for TokioCompatFile
impl Debug for TokioCompatFile
Source§impl Deref for TokioCompatFile
impl Deref for TokioCompatFile
Source§impl DerefMut for TokioCompatFile
impl DerefMut for TokioCompatFile
Source§impl Drop for TokioCompatFile
impl Drop for TokioCompatFile
Source§impl From<File> for TokioCompatFile
impl From<File> for TokioCompatFile
Source§impl From<TokioCompatFile> for File
impl From<TokioCompatFile> for File
Source§fn from(file: TokioCompatFile) -> Self
fn from(file: TokioCompatFile) -> Self
impl<'pin> Unpin for TokioCompatFilewhere
PinnedFieldsOf<__TokioCompatFile<'pin>>: Unpin,
Auto Trait Implementations§
impl !Freeze for TokioCompatFile
impl !RefUnwindSafe for TokioCompatFile
impl Send for TokioCompatFile
impl Sync for TokioCompatFile
impl !UnwindSafe for TokioCompatFile
Blanket Implementations§
Source§impl<R> AsyncBufReadExt for Rwhere
R: AsyncBufRead + ?Sized,
impl<R> AsyncBufReadExt for Rwhere
R: AsyncBufRead + ?Sized,
Source§fn read_until<'a>(
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>,
) -> ReadUntil<'a, Self>where
Self: Unpin,
fn read_until<'a>(
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>,
) -> ReadUntil<'a, Self>where
Self: Unpin,
Source§fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLine<'a, Self>where
Self: Unpin,
fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLine<'a, Self>where
Self: Unpin,
Source§fn split(self, byte: u8) -> Split<Self>
fn split(self, byte: u8) -> Split<Self>
byte
. Read moreSource§fn fill_buf(&mut self) -> FillBuf<'_, Self>where
Self: Unpin,
fn fill_buf(&mut self) -> FillBuf<'_, Self>where
Self: Unpin,
Source§impl<R> AsyncReadExt for R
impl<R> AsyncReadExt for R
Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
Source§fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
buf
. Read moreSource§fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
Source§fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
Source§fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
Source§fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
Source§fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
Source§fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
Source§fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
Source§fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
Source§fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
Source§fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
Source§fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
Source§fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
Source§fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
Source§fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
Source§fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
Source§fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
Source§fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
Source§fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
Source§fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
Source§fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
Source§fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
Source§fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
Source§fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
buf
. Read moreSource§impl<S> AsyncSeekExt for S
impl<S> AsyncSeekExt for S
Source§fn seek(&mut self, pos: SeekFrom) -> Seek<'_, Self>where
Self: Unpin,
fn seek(&mut self, pos: SeekFrom) -> Seek<'_, Self>where
Self: Unpin,
Source§fn rewind(&mut self) -> Seek<'_, Self>where
Self: Unpin,
fn rewind(&mut self) -> Seek<'_, Self>where
Self: Unpin,
Source§fn stream_position(&mut self) -> Seek<'_, Self>where
Self: Unpin,
fn stream_position(&mut self) -> Seek<'_, Self>where
Self: Unpin,
Source§impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
Source§fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
Source§fn write_vectored<'a, 'b>(
&'a mut self,
bufs: &'a [IoSlice<'b>],
) -> WriteVectored<'a, 'b, Self>where
Self: Unpin,
fn write_vectored<'a, 'b>(
&'a mut self,
bufs: &'a [IoSlice<'b>],
) -> WriteVectored<'a, 'b, Self>where
Self: Unpin,
Source§fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
Source§fn write_all_buf<'a, B>(
&'a mut self,
src: &'a mut B,
) -> WriteAllBuf<'a, Self, B>
fn write_all_buf<'a, B>( &'a mut self, src: &'a mut B, ) -> WriteAllBuf<'a, Self, B>
Source§fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
Source§fn write_u8(&mut self, n: u8) -> WriteU8<&mut Self>where
Self: Unpin,
fn write_u8(&mut self, n: u8) -> WriteU8<&mut Self>where
Self: Unpin,
Source§fn write_i8(&mut self, n: i8) -> WriteI8<&mut Self>where
Self: Unpin,
fn write_i8(&mut self, n: i8) -> WriteI8<&mut Self>where
Self: Unpin,
Source§fn write_u16(&mut self, n: u16) -> WriteU16<&mut Self>where
Self: Unpin,
fn write_u16(&mut self, n: u16) -> WriteU16<&mut Self>where
Self: Unpin,
Source§fn write_i16(&mut self, n: i16) -> WriteI16<&mut Self>where
Self: Unpin,
fn write_i16(&mut self, n: i16) -> WriteI16<&mut Self>where
Self: Unpin,
Source§fn write_u32(&mut self, n: u32) -> WriteU32<&mut Self>where
Self: Unpin,
fn write_u32(&mut self, n: u32) -> WriteU32<&mut Self>where
Self: Unpin,
Source§fn write_i32(&mut self, n: i32) -> WriteI32<&mut Self>where
Self: Unpin,
fn write_i32(&mut self, n: i32) -> WriteI32<&mut Self>where
Self: Unpin,
Source§fn write_u64(&mut self, n: u64) -> WriteU64<&mut Self>where
Self: Unpin,
fn write_u64(&mut self, n: u64) -> WriteU64<&mut Self>where
Self: Unpin,
Source§fn write_i64(&mut self, n: i64) -> WriteI64<&mut Self>where
Self: Unpin,
fn write_i64(&mut self, n: i64) -> WriteI64<&mut Self>where
Self: Unpin,
Source§fn write_u128(&mut self, n: u128) -> WriteU128<&mut Self>where
Self: Unpin,
fn write_u128(&mut self, n: u128) -> WriteU128<&mut Self>where
Self: Unpin,
Source§fn write_i128(&mut self, n: i128) -> WriteI128<&mut Self>where
Self: Unpin,
fn write_i128(&mut self, n: i128) -> WriteI128<&mut Self>where
Self: Unpin,
Source§fn write_f32(&mut self, n: f32) -> WriteF32<&mut Self>where
Self: Unpin,
fn write_f32(&mut self, n: f32) -> WriteF32<&mut Self>where
Self: Unpin,
Source§fn write_f64(&mut self, n: f64) -> WriteF64<&mut Self>where
Self: Unpin,
fn write_f64(&mut self, n: f64) -> WriteF64<&mut Self>where
Self: Unpin,
Source§fn write_u16_le(&mut self, n: u16) -> WriteU16Le<&mut Self>where
Self: Unpin,
fn write_u16_le(&mut self, n: u16) -> WriteU16Le<&mut Self>where
Self: Unpin,
Source§fn write_i16_le(&mut self, n: i16) -> WriteI16Le<&mut Self>where
Self: Unpin,
fn write_i16_le(&mut self, n: i16) -> WriteI16Le<&mut Self>where
Self: Unpin,
Source§fn write_u32_le(&mut self, n: u32) -> WriteU32Le<&mut Self>where
Self: Unpin,
fn write_u32_le(&mut self, n: u32) -> WriteU32Le<&mut Self>where
Self: Unpin,
Source§fn write_i32_le(&mut self, n: i32) -> WriteI32Le<&mut Self>where
Self: Unpin,
fn write_i32_le(&mut self, n: i32) -> WriteI32Le<&mut Self>where
Self: Unpin,
Source§fn write_u64_le(&mut self, n: u64) -> WriteU64Le<&mut Self>where
Self: Unpin,
fn write_u64_le(&mut self, n: u64) -> WriteU64Le<&mut Self>where
Self: Unpin,
Source§fn write_i64_le(&mut self, n: i64) -> WriteI64Le<&mut Self>where
Self: Unpin,
fn write_i64_le(&mut self, n: i64) -> WriteI64Le<&mut Self>where
Self: Unpin,
Source§fn write_u128_le(&mut self, n: u128) -> WriteU128Le<&mut Self>where
Self: Unpin,
fn write_u128_le(&mut self, n: u128) -> WriteU128Le<&mut Self>where
Self: Unpin,
Source§fn write_i128_le(&mut self, n: i128) -> WriteI128Le<&mut Self>where
Self: Unpin,
fn write_i128_le(&mut self, n: i128) -> WriteI128Le<&mut Self>where
Self: Unpin,
Source§fn write_f32_le(&mut self, n: f32) -> WriteF32Le<&mut Self>where
Self: Unpin,
fn write_f32_le(&mut self, n: f32) -> WriteF32Le<&mut Self>where
Self: Unpin,
Source§fn write_f64_le(&mut self, n: f64) -> WriteF64Le<&mut Self>where
Self: Unpin,
fn write_f64_le(&mut self, n: f64) -> WriteF64Le<&mut Self>where
Self: Unpin,
Source§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)