Struct sevenz_rust::SevenZReader
source · pub struct SevenZReader<R: Read + Seek> { /* private fields */ }
Implementations§
source§impl SevenZReader<File>
impl SevenZReader<File>
source§impl<R: Read + Seek> SevenZReader<R>
impl<R: Read + Seek> SevenZReader<R>
pub fn new( source: R, reader_len: u64, password: Password, ) -> Result<Self, Error>
pub fn from_archive(archive: Archive, source: R, password: Password) -> Self
pub fn archive(&self) -> &Archive
sourcepub fn for_each_entries<F: FnMut(&SevenZArchiveEntry, &mut dyn Read) -> Result<bool, Error>>(
&mut self,
each: F,
) -> Result<(), Error>
pub fn for_each_entries<F: FnMut(&SevenZArchiveEntry, &mut dyn Read) -> Result<bool, Error>>( &mut self, each: F, ) -> Result<(), Error>
Takes a closure to decode each files in the archive.
Attention about solid archive: When decoding a solid archive, the data to be decompressed depends on the data in front of it, you cannot simply skip the previous data and only decompress the data in the back.
See ChecksumVerificationFailed.
To speed up decompression, you can check this example examples/forder_dec.rs. And this example mt_decompress.rs if you want use multi-thread.
Auto Trait Implementations§
impl<R> Freeze for SevenZReader<R>where
R: Freeze,
impl<R> RefUnwindSafe for SevenZReader<R>where
R: RefUnwindSafe,
impl<R> Send for SevenZReader<R>where
R: Send,
impl<R> Sync for SevenZReader<R>where
R: Sync,
impl<R> Unpin for SevenZReader<R>where
R: Unpin,
impl<R> UnwindSafe for SevenZReader<R>where
R: 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