Struct DirEntry
struct DirEntry { ... }
Entries returned by the ReadDir stream.
This is a specialized version of std::fs::DirEntry for usage from the
Tokio runtime.
An instance of DirEntry represents an entry inside of a directory on the
filesystem. Each entry can be inspected via methods to learn about the full
path or possibly other metadata through per-platform extension traits.
Implementations
impl DirEntry
fn ino(self: &Self) -> u64Returns the underlying
d_inofield in the containeddirentstructure.Examples
use fs; # # async
impl DirEntry
fn path(self: &Self) -> PathBufReturns the full path to the file that this entry represents.
The full path is created by joining the original path to
read_dirwith the filename of this entry.Examples
use tokio::fs; # async fn dox() -> std::io::Result<()> { let mut entries = fs::read_dir(".").await?; while let Some(entry) = entries.next_entry().await? { println!("{:?}", entry.path()); } # Ok(()) # }This prints output like:
"./whatever.txt" "./foo.html" "./hello_world.rs"The exact text, of course, depends on what files you have in
..fn file_name(self: &Self) -> OsStringReturns the bare file name of this directory entry without any other leading path component.
Examples
use fs; # asyncasync fn metadata(self: &Self) -> Result<Metadata>Returns the metadata for the file that this entry points at.
This function will not traverse symlinks if this entry points at a symlink.
Platform-specific behavior
On Windows this function is cheap to call (no extra system calls needed), but on Unix platforms this function is the equivalent of calling
symlink_metadataon the path.Examples
use fs; # asyncasync fn file_type(self: &Self) -> Result<FileType>Returns the file type for the file that this entry points at.
This function will not traverse symlinks if this entry points at a symlink.
Platform-specific behavior
On Windows and most Unix platforms this function is free (no extra system calls needed), but some Unix platforms may require the equivalent call to
symlink_metadatato learn about the target file type.Examples
use fs; # async
impl Debug for DirEntry
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl Freeze for DirEntry
impl RefUnwindSafe for DirEntry
impl Send for DirEntry
impl Sync for DirEntry
impl Unpin for DirEntry
impl UnsafeUnpin for DirEntry
impl UnwindSafe for DirEntry
impl<T> Any for DirEntry
fn type_id(self: &Self) -> TypeId
impl<T> Borrow for DirEntry
fn borrow(self: &Self) -> &T
impl<T> BorrowMut for DirEntry
fn borrow_mut(self: &mut Self) -> &mut T
impl<T> From for DirEntry
fn from(t: T) -> TReturns the argument unchanged.
impl<T, U> Into for DirEntry
fn into(self: Self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom for DirEntry
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto for DirEntry
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>