Struct FileEntry

Source
pub struct FileEntry<'a, B: Backend>(/* private fields */);
Expand description

A file entry of the archive.

An instance of this type is attached to the Entry::File variant and provides file specific options.

One of the read* methods can be used to get the content of the file.

Implementations§

Source§

impl<'a, B: Backend> FileEntry<'a, B>

Source

pub fn name(&self) -> &str

Returns the name of the file.

Source

pub fn size(&self) -> u64

Returns the size of the file.

Source

pub fn can_read(&self, group: Group) -> bool

Tests whether a member of the given group has read access.

Source

pub fn can_write(&self, group: Group) -> bool

Tests whether a member of the given group has write access.

Source

pub fn can_execute(&self, group: Group) -> bool

Tests whether a member of the given group has execute access.

Source

pub fn appended(&self) -> &DateTime<Utc>

Returns the time when the entry was appened to the archive.

Source

pub fn created(&self) -> &DateTime<Utc>

Returns the time when the originating filesystem entry was created.

Source

pub fn changed(&self) -> &DateTime<Utc>

Returns the time when the originating filesystem entry was changed the last time.

Source

pub fn modified(&self) -> &DateTime<Utc>

Returns the time when the originating filesystem entry was modified the last time.

Source

pub fn read(&mut self, buf: &mut [u8]) -> ArchiveResult<usize, B>

Reads data from the entry.

Reads up to buf.len() bytes and puts them into buf.

The methods returns the number of bytes actually read, which cannot be greater than the buf.len().

Source

pub fn read_all(&mut self, buf: &mut [u8]) -> ArchiveResult<(), B>

Read the exact number of bytes required to fill buf

This function reads as many bytes as necessary to completely fill the specified buffer buf.

§Errors

If this function encounters an “end of file” before completely filling the buffer, it returns an Error::UnexpectedEof error. The contents of buf are unspecified in this case.

Source

pub fn read_vec(&mut self) -> ArchiveResult<Vec<u8>, B>

Reads all bytes until EOF and collects them into a Vec which is returned.

Auto Trait Implementations§

§

impl<'a, B> Freeze for FileEntry<'a, B>

§

impl<'a, B> !RefUnwindSafe for FileEntry<'a, B>

§

impl<'a, B> !Send for FileEntry<'a, B>

§

impl<'a, B> !Sync for FileEntry<'a, B>

§

impl<'a, B> Unpin for FileEntry<'a, B>

§

impl<'a, B> !UnwindSafe for FileEntry<'a, B>

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.