Struct block_device_adapters::StreamSlice
source · pub struct StreamSlice<T: Read + Write + Seek> { /* private fields */ }Expand description
Stream wrapper for accessing limited segment of data from underlying file or device.
Implementations§
source§impl<T: Read + Write + Seek> StreamSlice<T>
impl<T: Read + Write + Seek> StreamSlice<T>
sourcepub async fn new(
inner: T,
start_offset: u64,
end_offset: u64
) -> Result<Self, StreamSliceError<T::Error>>
pub async fn new( inner: T, start_offset: u64, end_offset: u64 ) -> Result<Self, StreamSliceError<T::Error>>
Creates new StreamSlice from inner stream and offset range.
start_offset is inclusive offset of the first accessible byte.
end_offset is exclusive offset of the first non-accessible byte.
start_offset must be lower or equal to end_offset.
sourcepub fn into_inner(self) -> T
pub fn into_inner(self) -> T
Returns inner object
Trait Implementations§
source§impl<T: Read + Write + Seek> ErrorType for StreamSlice<T>
impl<T: Read + Write + Seek> ErrorType for StreamSlice<T>
§type Error = StreamSliceError<<T as ErrorType>::Error>
type Error = StreamSliceError<<T as ErrorType>::Error>
Error type of all the IO operations on this type.
source§impl<T: Read + Write + Seek> Read for StreamSlice<T>
impl<T: Read + Write + Seek> Read for StreamSlice<T>
source§impl<T: Read + Write + Seek> Seek for StreamSlice<T>
impl<T: Read + Write + Seek> Seek for StreamSlice<T>
source§impl<T: Read + Write + Seek> Write for StreamSlice<T>
impl<T: Read + Write + Seek> Write for StreamSlice<T>
source§async fn write(
&mut self,
buf: &[u8]
) -> Result<usize, StreamSliceError<T::Error>>
async fn write( &mut self, buf: &[u8] ) -> Result<usize, StreamSliceError<T::Error>>
Write a buffer into this writer, returning how many bytes were written. Read more
Auto Trait Implementations§
impl<T> RefUnwindSafe for StreamSlice<T>where
T: RefUnwindSafe,
impl<T> Send for StreamSlice<T>where
T: Send,
impl<T> Sync for StreamSlice<T>where
T: Sync,
impl<T> Unpin for StreamSlice<T>where
T: Unpin,
impl<T> UnwindSafe for StreamSlice<T>where
T: UnwindSafe,
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