pub enum File {
RegularFile(RegularFile),
Directory(Directory),
}Expand description
Represents a file system entry, which can be either a file or a directory.
This enum allows distinguishing between regular files and directories within the filesystem. It provides flexibility for handling different file system objects in a unified manner.
Variants§
RegularFile(RegularFile)
A regular file.
This variant represents a standard file in the filesystem, which can be read from or written to.
Directory(Directory)
A directory.
This variant represents a directory in the filesystem, which can contain other files or directories.
Implementations§
Source§impl File
impl File
Sourcepub fn into_regular_file(self) -> Option<RegularFile>
pub fn into_regular_file(self) -> Option<RegularFile>
Converts the File into a RegularFile, if it is one.
§Returns
Some(RegularFile)ifselfis aRegularFile.Noneifselfis not aRegularFile.
This function allows extracting the RegularFile from File
safely.
Sourcepub fn into_directory(self) -> Option<Directory>
pub fn into_directory(self) -> Option<Directory>
Converts the File into a Directory, if it is one.
§Returns
Some(Directory)ifselfis aDirectory.Noneifselfis not aDirectory.
This function allows extracting the Directory from File safely.
§Example
let dir = File::Directory(directory);
assert!(dir.into_directory().is_some());
let file = File::RegularFile(regular_file);
assert!(file.into_directory().is_none());Sourcepub fn ino(&self) -> InodeNumber
pub fn ino(&self) -> InodeNumber
Get InodeNumber of this File regardless of its inner type.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for File
impl !RefUnwindSafe for File
impl Send for File
impl Sync for File
impl Unpin for File
impl !UnwindSafe for File
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)