Struct ext4_view::Ext4

source ·
pub struct Ext4 { /* private fields */ }
Expand description

Read-only access to an ext4 filesystem.

Implementations§

source§

impl Ext4

source

pub fn load(reader: Box<dyn Ext4Read>) -> Result<Self, Ext4Error>

Load an Ext4 instance from the given reader.

This reads and validates the superblock and block group descriptors. No other data is read.

source

pub fn load_from_path(path: &Path) -> Result<Self, Ext4Error>

Available on crate feature std only.

Load an Ext4 filesystem from the given path.

This reads and validates the superblock and block group descriptors. No other data is read.

source§

impl Ext4

These methods mirror the std::fs API.

source

pub fn canonicalize<'p, P>(&self, path: P) -> Result<PathBuf, Ext4Error>
where P: TryInto<Path<'p>>,

Get the canonical, absolute form of a path with all intermediate components normalized and symbolic links resolved.

§Errors

An error will be returned if:

  • path is not absolute.
  • path does not exist.
source

pub fn read<'p, P>(&self, path: P) -> Result<Vec<u8>, Ext4Error>
where P: TryInto<Path<'p>>,

Read the entire contents of a file as raw bytes.

§Errors

An error will be returned if:

  • path is not absolute.
  • path does not exist.
  • path is a directory or special file type.
source

pub fn read_to_string<'p, P>(&self, path: P) -> Result<String, Ext4Error>
where P: TryInto<Path<'p>>,

Read the entire contents of a file as a string.

§Errors

An error will be returned if:

  • path is not absolute.
  • path does not exist.
  • path is a directory or special file type.

Get the target of a symbolic link.

The final component of path must be a symlink. If the path contains any symlinks in components prior to the end, they will be fully resolved as normal.

§Errors

An error will be returned if:

  • path is not absolute.
  • The final component of path is not a symlink.
source

pub fn read_dir<'p, P>(&self, path: P) -> Result<ReadDir<'_>, Ext4Error>
where P: TryInto<Path<'p>>,

Get an iterator over the entries in a directory.

§Errors

An error will be returned if:

  • path is not absolute.
  • path does not exist
  • path is not a directory
source

pub fn exists<'p, P>(&self, path: P) -> Result<bool, Ext4Error>
where P: TryInto<Path<'p>>,

Check if path exists.

Returns Ok(true) if path exists, or Ok(false) if it does not exist.

§Errors

An error will be returned if:

  • path is not absolute.
source

pub fn metadata<'p, P>(&self, path: P) -> Result<Metadata, Ext4Error>
where P: TryInto<Path<'p>>,

Get Metadata for path.

§Errors

An error will be returned if:

  • path is not absolute.
  • path does not exist.

Auto Trait Implementations§

§

impl !Freeze for Ext4

§

impl !RefUnwindSafe for Ext4

§

impl !Send for Ext4

§

impl !Sync for Ext4

§

impl Unpin for Ext4

§

impl !UnwindSafe for Ext4

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

§

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

§

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.