Struct Metadata

Source
pub struct Metadata { /* private fields */ }
Available on crate feature root only.
Expand description

Metadata information about a file.

This structure is returned from the metadata function and represents known metadata about a file such as its permissions, size, modification times, etc.

Implementations§

Source§

impl Metadata

Source

pub fn is_dir(&self) -> bool

Returns true if this metadata is for a directory. The result is mutually exclusive to the result of Metadata::is_file.

§Examples
use relative_path_utils::Root;

let root = Root::new(".")?;

let metadata = root.metadata("foo.txt")?;
assert!(!metadata.is_dir());
Source

pub fn is_file(&self) -> bool

Returns true if this metadata is for a regular file. The result is mutually exclusive to the result of Metadata::is_dir.

When the goal is simply to read from (or write to) the source, the most reliable way to test the source can be read (or written to) is to open it. Only using is_file can break workflows like diff <( prog_a ) on a Unix-like system for example. See Root::open or OpenOptions::open for more information.

§Examples
use relative_path_utils::Root;

let root = Root::new(".")?;

let metadata = root.metadata("foo.txt")?;
assert!(metadata.is_file());

Returns true if this metadata is for a symbolic link.

§Examples
use relative_path_utils::Root;

let root = Root::new(".")?;

let metadata = root.metadata("foo.txt")?;
assert!(metadata.is_symlink());

Trait Implementations§

Source§

impl Clone for Metadata

Source§

fn clone(&self) -> Metadata

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

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

Performs copy-assignment from source. 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> 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.