[][src]Struct sgx_tstd::io::IoSliceMut

#[repr(transparent)]pub struct IoSliceMut<'a>(_);

A buffer type used with Read::read_vectored.

It is semantically a wrapper around an &mut [u8], but is guaranteed to be ABI compatible with the iovec type on Unix platforms and WSABUF on Windows.


impl<'a> IoSliceMut<'a>[src]

pub fn new(buf: &'a mut [u8]) -> IoSliceMut<'a>[src]

Creates a new IoSliceMut wrapping a byte slice.


Panics on Windows if the slice is larger than 4GB.

pub fn advance<'b>(
    bufs: &'b mut [IoSliceMut<'a>],
    n: usize
) -> &'b mut [IoSliceMut<'a>]

Advance the internal cursor of the slice.


Elements in the slice may be modified if the cursor is not advanced to the end of the slice. For example if we have a slice of buffers with 2 IoSliceMuts, both of length 8, and we advance the cursor by 10 bytes the first IoSliceMut will be untouched however the second will be modified to remove the first 2 bytes (10 - 8).

Trait Implementations

impl<'a> Debug for IoSliceMut<'a>[src]

impl<'a> Deref for IoSliceMut<'a>[src]

type Target = [u8]

The resulting type after dereferencing.

impl<'a> DerefMut for IoSliceMut<'a>[src]

impl<'a> Send for IoSliceMut<'a>[src]

impl<'a> Sync for IoSliceMut<'a>[src]

Auto Trait Implementations

impl<'a> RefUnwindSafe for IoSliceMut<'a>

impl<'a> Unpin for IoSliceMut<'a>

impl<'a> !UnwindSafe for IoSliceMut<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.