Struct async_fs::DirEntry

source ·
pub struct DirEntry(/* private fields */);
Expand description

An entry in a directory.

A stream of entries in a directory is returned by read_dir().

For Unix-specific options, import the DirEntryExt trait.

Implementations§

source§

impl DirEntry

source

pub fn path(&self) -> PathBuf

Returns the full path to this entry.

The full path is created by joining the original path passed to read_dir() with the name of this entry.

Examples
use futures_lite::stream::StreamExt;

let mut dir = async_fs::read_dir(".").await?;

while let Some(entry) = dir.try_next().await? {
    println!("{:?}", entry.path());
}
source

pub async fn metadata(&self) -> Result<Metadata>

Reads the metadata for this entry.

This function will traverse symbolic links to read the metadata.

If you want to read metadata without following symbolic links, use symlink_metadata() instead.

Errors

An error will be returned in the following situations:

  • This entry does not point to an existing file or directory anymore.
  • The current process lacks permissions to read the metadata.
  • Some other I/O error occurred.
Examples
use futures_lite::stream::StreamExt;

let mut dir = async_fs::read_dir(".").await?;

while let Some(entry) = dir.try_next().await? {
    println!("{:?}", entry.metadata().await?);
}
source

pub async fn file_type(&self) -> Result<FileType>

Reads the file type for this entry.

This function will not traverse symbolic links if this entry points at one.

If you want to read metadata with following symbolic links, use metadata() instead.

Errors

An error will be returned in the following situations:

  • This entry does not point to an existing file or directory anymore.
  • The current process lacks permissions to read this entry’s metadata.
  • Some other I/O error occurred.
Examples
use futures_lite::stream::StreamExt;

let mut dir = async_fs::read_dir(".").await?;

while let Some(entry) = dir.try_next().await? {
    println!("{:?}", entry.file_type().await?);
}
source

pub fn file_name(&self) -> OsString

Returns the bare name of this entry without the leading path.

Examples
use futures_lite::stream::StreamExt;

let mut dir = async_fs::read_dir(".").await?;

while let Some(entry) = dir.try_next().await? {
    println!("{}", entry.file_name().to_string_lossy());
}

Trait Implementations§

source§

impl Clone for DirEntry

source§

fn clone(&self) -> Self

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
source§

impl Debug for DirEntry

source§

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

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

impl DirEntryExt for DirEntry

source§

fn ino(&self) -> u64

Returns the underlying d_ino field in the contained dirent structure. 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> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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,

§

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

§

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.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more