Struct tokio::fs::ReadDir

source ·
pub struct ReadDir(/* private fields */);
Available on crate feature fs only.
Expand description

Reads the entries in a directory.

This struct is returned from the read_dir function of this module and will yield instances of DirEntry. Through a DirEntry information like the entry’s path and possibly other metadata can be learned.

A ReadDir can be turned into a Stream with ReadDirStream.

§Errors

This stream will return an Err if there’s some sort of intermittent IO error during iteration.

Implementations§

source§

impl ReadDir

source

pub async fn next_entry(&mut self) -> Result<Option<DirEntry>>

Returns the next entry in the directory stream.

§Cancel safety

This method is cancellation safe.

source

pub fn poll_next_entry( &mut self, cx: &mut Context<'_>, ) -> Poll<Result<Option<DirEntry>>>

Polls for the next directory entry in the stream.

This method returns:

  • Poll::Pending if the next directory entry is not yet available.
  • Poll::Ready(Ok(Some(entry))) if the next directory entry is available.
  • Poll::Ready(Ok(None)) if there are no more directory entries in this stream.
  • Poll::Ready(Err(err)) if an IO error occurred while reading the next directory entry.

When the method returns Poll::Pending, the Waker in the provided Context is scheduled to receive a wakeup when the next directory entry becomes available on the underlying IO resource.

Note that on multiple calls to poll_next_entry, only the Waker from the Context passed to the most recent call is scheduled to receive a wakeup.

Trait Implementations§

source§

impl Debug for ReadDir

source§

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

Formats the value using the given formatter. 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, 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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 56 bytes