Struct Archive

Source
pub struct Archive { /* private fields */ }

Implementations§

Source§

impl Archive

Source

pub fn new(file: File) -> Self

Creates a new archive file. The file signature is written to the beginning of the file. The file is truncated to 0 bytes.

Source

pub fn open(path: &str) -> Result<Self, Error>

Opens an existing archive file for reading and writing. This will not overwrite the file, but append to it.

Source

pub fn add_directory( &mut self, path: &str, progress: Option<fn(&PathBuf)>, ) -> Result<(), Error>

Adds all files in the given directory to the archive. (including subdirectories) This will append the directory to the end of the archive, if this directory already exists, it will not be replaced.

After this function is called, the existing header will be trimmed to the end of the archive, then readded upon completion.

§Panics

This function will panic if any filename is not valid UTF-8 or longer than 255 bytes.

Source

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

Returns the entries in the archive.

Source

pub fn into_entries(self) -> Vec<Entry>

Consumes the archive and returns the entries.

Source

pub fn add_entry( &mut self, entry: DirEntry, progress: Option<fn(&PathBuf)>, ) -> Result<(), Error>

Adds a single file entry to the archive. (including subdirectories) This will append the entry to the end of the archive, if this entry already exists, it will not be replaced.

After this function is called, the existing header will be trimmed to the end of the archive, then readded upon completion.

§Panics

This function will panic if any filename is not valid UTF-8 or longer than 255 bytes.

Trait Implementations§

Source§

impl Debug for Archive

Source§

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

Formats the value using the given formatter. Read more

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> 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, 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.