pub struct ArchiveReader<'b, C: CpioHeader> {
pub reader: Box<dyn ReadSeek + 'b>,
pub objects: Objects<C>,
}
Expand description
Read cpio Archive and extract data
§Example
Read archive.cpio
and extract data.
let mut file = File::open("archive.cpio").unwrap();
let mut archive = ArchiveReader::<NewcHeader>::from_reader_with_offset(&mut file, 0).unwrap();
// extract bytes from all in archive
for object in &archive.objects.inner {
let mut out = OpenOptions::new()
.write(true)
.create(true)
.open(object.header.as_header().name)
.unwrap();
archive.reader.extract_data(object, &mut out).unwrap();
}
Fields§
§reader: Box<dyn ReadSeek + 'b>
§objects: Objects<C>
Implementations§
Source§impl<'b, C: CpioHeader> ArchiveReader<'b, C>
impl<'b, C: CpioHeader> ArchiveReader<'b, C>
Auto Trait Implementations§
impl<'b, C> Freeze for ArchiveReader<'b, C>
impl<'b, C> !RefUnwindSafe for ArchiveReader<'b, C>
impl<'b, C> !Send for ArchiveReader<'b, C>
impl<'b, C> !Sync for ArchiveReader<'b, C>
impl<'b, C> Unpin for ArchiveReader<'b, C>where
C: Unpin,
impl<'b, C> !UnwindSafe for ArchiveReader<'b, C>
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