Skip to main content

ArchiveManifest

Struct ArchiveManifest 

Source
pub struct ArchiveManifest {
    pub format: ArchiveEncoding,
    pub entries: Vec<ArchiveEntry>,
}
Expand description

A normalized listing of archive entries.

Fields§

§format: ArchiveEncoding

Archive and compression format metadata.

§entries: Vec<ArchiveEntry>

Normalized archive entry listing.

Implementations§

Source§

impl ArchiveManifest

Source

pub const fn new(format: ArchiveEncoding) -> ArchiveManifest

Creates an empty manifest for an archive encoding.

Source

pub fn with_entries(self, entries: Vec<ArchiveEntry>) -> ArchiveManifest

Adds an entry listing to the manifest.

Source

pub fn push_entry(&mut self, entry: ArchiveEntry)

Appends one entry to the manifest.

Source

pub const fn format(&self) -> ArchiveEncoding

Returns the archive encoding metadata.

Source

pub fn entries(&self) -> &[ArchiveEntry]

Returns the manifest entries.

Source

pub fn entry_count(&self) -> usize

Returns the number of entries.

Source

pub fn total_size(&self) -> u64

Returns the sum of all known entry sizes.

Source

pub fn known_size_count(&self) -> usize

Returns the number of entries with known sizes.

Source

pub fn file_count(&self) -> usize

Returns the number of regular file entries.

Source

pub fn directory_count(&self) -> usize

Returns the number of directory entries.

Returns the number of symbolic link entries.

Source

pub fn has_unsafe_paths(&self) -> bool

Returns whether any entry path is unsafe for relative extraction.

Source

pub fn unsafe_paths(&self) -> Vec<&ArchiveEntry>

Returns entries whose paths are unsafe for relative extraction.

Source

pub fn extensions(&self) -> Vec<String>

Returns sorted, deduplicated lowercase entry extensions.

Trait Implementations§

Source§

impl Clone for ArchiveManifest

Source§

fn clone(&self) -> ArchiveManifest

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ArchiveManifest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for ArchiveManifest

Source§

fn default() -> ArchiveManifest

Returns the “default value” for a type. Read more
Source§

impl PartialEq for ArchiveManifest

Source§

fn eq(&self, other: &ArchiveManifest) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ArchiveManifest

Source§

impl StructuralPartialEq for ArchiveManifest

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.