#[repr(C)]pub struct vfs_dir_ops {
pub opendir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR, dirname: *const c_char) -> c_int>,
pub readdir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR, entry: *mut vfs_dirent_t) -> c_int>,
pub closedir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR) -> c_int>,
}
Expand description
@brief Operations on open directories
Fields§
§opendir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR, dirname: *const c_char) -> c_int>
@brief Open a directory for reading with readdir
@param[in] dirp pointer to open directory @param[in] name null-terminated name of the dir to open, relative to the file system root, including a leading slash
@return 0 on success @return <0 on error
readdir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR, entry: *mut vfs_dirent_t) -> c_int>
@brief Read a single entry from the open directory dirp and advance the read position by one
@p entry will be populated with information about the next entry in the directory stream @p dirp
If @p entry was updated successfully, @c readdir shall return 1.
If the end of stream was reached, @c readdir shall return 0 and @p entry shall remain untouched.
@param[in] dirp pointer to open directory @param[out] entry directory entry information
@return 1 if @p entry was updated @return 0 if @p dirp has reached the end of the directory index @return <0 on error
closedir: Option<unsafe extern "C" fn(dirp: *mut vfs_DIR) -> c_int>
@brief Close an open directory
@param[in] dirp pointer to open directory
@return 0 on success @return <0 on error, the directory stream dirp should be considered invalid
Trait Implementations§
Source§impl Clone for vfs_dir_ops
impl Clone for vfs_dir_ops
Source§fn clone(&self) -> vfs_dir_ops
fn clone(&self) -> vfs_dir_ops
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for vfs_dir_ops
impl Debug for vfs_dir_ops
Source§impl Default for vfs_dir_ops
impl Default for vfs_dir_ops
Source§fn default() -> vfs_dir_ops
fn default() -> vfs_dir_ops
impl Copy for vfs_dir_ops
Auto Trait Implementations§
impl Freeze for vfs_dir_ops
impl RefUnwindSafe for vfs_dir_ops
impl Send for vfs_dir_ops
impl Sync for vfs_dir_ops
impl Unpin for vfs_dir_ops
impl UnwindSafe for vfs_dir_ops
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)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: 12 bytes