Struct ReadDir

struct ReadDir(_)

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

impl ReadDir

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

Returns the next entry in the directory stream.

Cancel safety

This method is cancellation safe.

fn poll_next_entry(self: &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.

impl Debug for ReadDir

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

impl Freeze for ReadDir

impl RefUnwindSafe for ReadDir

impl Send for ReadDir

impl Sync for ReadDir

impl Unpin for ReadDir

impl UnsafeUnpin for ReadDir

impl UnwindSafe for ReadDir

impl<T> Any for ReadDir

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for ReadDir

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for ReadDir

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> From for ReadDir

fn from(t: T) -> T

Returns the argument unchanged.

impl<T, U> Into for ReadDir

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for ReadDir

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for ReadDir

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>