pub struct ChainIo<'a, R: ?Sized, W: ?Sized> { /* private fields */ }Expand description
Borrowed regions and byte ports for one consumed device chain.
The source and sink types remain generic so this crate does not depend on command semantics or a particular guest-memory library.
Implementations§
Source§impl<'a, R: ?Sized, W: ?Sized> ChainIo<'a, R, W>
impl<'a, R: ?Sized, W: ?Sized> ChainIo<'a, R, W>
Sourcepub fn new(
regions: &'a [ChainRegion],
request: &'a R,
response: &'a mut W,
) -> Self
pub fn new( regions: &'a [ChainRegion], request: &'a R, response: &'a mut W, ) -> Self
Construct a borrowed chain view after topology and mapping validation.
Sourcepub fn into_parts(self) -> (&'a [ChainRegion], &'a R, &'a mut W)
pub fn into_parts(self) -> (&'a [ChainRegion], &'a R, &'a mut W)
Consume the view into its region metadata, readable port, and writable port.
Trait Implementations§
Auto Trait Implementations§
impl<'a, R, W> !UnwindSafe for ChainIo<'a, R, W>
impl<'a, R, W> Freeze for ChainIo<'a, R, W>
impl<'a, R, W> RefUnwindSafe for ChainIo<'a, R, W>
impl<'a, R, W> Send for ChainIo<'a, R, W>
impl<'a, R, W> Sync for ChainIo<'a, R, W>
impl<'a, R, W> Unpin for ChainIo<'a, R, W>
impl<'a, R, W> UnsafeUnpin for ChainIo<'a, R, W>
Blanket Implementations§
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
Mutably borrows from an owned value. Read more