[][src]Struct uefi::proto::media::file::Directory

#[repr(transparent)]pub struct Directory(_);

A FileHandle that is also a directory.

Use File::into_type or Directory::new to create a Directory. In addition to supporting the normal File operations, Directory supports iterating over its contained files.

Implementations

impl Directory[src]

pub unsafe fn new(handle: FileHandle) -> Self[src]

Coverts a FileHandle into a Directory without checking the file type.

Safety

This function should only be called on files which ARE directories, doing otherwise is unsafe.

pub fn read_entry<'buf>(
    &mut self,
    buffer: &'buf mut [u8]
) -> Result<Option<&'buf mut FileInfo>, Option<usize>>
[src]

Read the next directory entry

Try to read the next directory entry into buffer. If the buffer is too small, report the required buffer size as part of the error. If there are no more directory entries, return an empty optional.

The input buffer must be correctly aligned for a FileInfo. You can query the required alignment through the Align trait (<FileInfo as Align>::alignment()).

Arguments

  • buffer The target buffer of the read operation

Errors

  • uefi::Status::NO_MEDIA The device has no media
  • uefi::Status::DEVICE_ERROR The device reported an error, the file was deleted, or the end of the file was reached before the read().
  • uefi::Status::VOLUME_CORRUPTED The filesystem structures are corrupted
  • uefi::Status::BUFFER_TOO_SMALL The buffer is too small to hold a directory entry, the required buffer size is provided into the error.

pub fn reset_entry_readout(&mut self) -> Result[src]

Start over the process of enumerating directory entries

Trait Implementations

impl File for Directory[src]

Auto Trait Implementations

impl !Send for Directory

impl !Sync for Directory

impl Unpin for Directory

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.