[go: up one dir, main page]

Trait sonic_rs::writer::WriteExt

source ·
pub trait WriteExt: Write {
    // Required methods
    fn reserve_with(
        &mut self,
        additional: usize
    ) -> Result<&mut [MaybeUninit<u8>]>;
    unsafe fn flush_len(&mut self, additional: usize);
}
Expand description

The trait is a extension to io::Write with a reserved capacity.

Required Methods§

source

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

Reserve with additional capacity and returns the remaining spare capacity of the write as a slice of MaybeUninit<u8>.

The returned slice will be used to write new data before marking the data as initialized using the [add_len] method.

source

unsafe fn flush_len(&mut self, additional: usize)

Flush the additional length to the output stream, ensuring that additional bytes intermediately buffered contents reach their destination.

§Safety

Must be used after reserve_with

Implementations on Foreign Types§

source§

impl WriteExt for Vec<u8>

source§

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

source§

unsafe fn flush_len(&mut self, additional: usize)

source§

impl WriteExt for Writer<BytesMut>

source§

unsafe fn flush_len(&mut self, additional: usize)

source§

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

source§

impl<W: WriteExt + ?Sized> WriteExt for &mut W

source§

unsafe fn flush_len(&mut self, additional: usize)

source§

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

source§

impl<W: WriteExt + ?Sized> WriteExt for Box<W>

source§

unsafe fn flush_len(&mut self, additional: usize)

source§

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

source§

impl<W: WriteExt + ?Sized> WriteExt for BufWriter<W>

source§

fn reserve_with(&mut self, additional: usize) -> Result<&mut [MaybeUninit<u8>]>

source§

unsafe fn flush_len(&mut self, additional: usize)

Implementors§