FSError

Enum FSError 

Source
#[non_exhaustive]
pub enum FSError<I>
where I: Error,
{
Show 17 variants InternalFSError(InternalFSError), MalformedPath, BincodeError(BincodeError), NotADirectory, IsADirectory, DirectoryNotEmpty, ReadOnlyFile, NotFound, AlreadyExists, PermissionDenied, InvalidInput, StorageFull, RootDirectoryFull, DirEntryLimitReached, UnsupportedFS, UnexpectedEof, IOError(I),
}
Expand description

An error indicating that a filesystem-related operation has failed

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

InternalFSError(InternalFSError)

An internal FS error occured

§

MalformedPath

The Path provided is malformed.

This usually means that a path you provided isn’t a valid Utf8WindowsPath

If you are 100% that your path is valid (path.is_valid()), then perhaps you have encountered a bug. File a bug report here: https://github.com/Oakchris1955/simple-fatfs/issues

§

BincodeError(BincodeError)

bincode errored out while (de)serializing

This error variant should NEVER be raised. If you get this error, open an issue: https://github.com/Oakchris1955/simple-fatfs/issues

§

NotADirectory

Expected a directory

§

IsADirectory

Found a directory when we expected a file

§

DirectoryNotEmpty

Expected an empty directory

§

ReadOnlyFile

This file cannot be modified, as it is read-only

§

NotFound

A file or directory wasn’t found

§

AlreadyExists

An entity already exists

§

PermissionDenied

The operation lacked the necessary privileges to complete.

§

InvalidInput

A parameter was incorrect.

§

StorageFull

The underlying storage is full.

§

RootDirectoryFull

There aren’t enough free entries on the root directory to perform this operation. Consider performing this operation on a subdirectory instead

§

DirEntryLimitReached

The entry limit for this directory (2^16 - 1) has been reached. Consider performing this operation on a subdirectory instead

§

UnsupportedFS

The filesystem provided is not supported (e.g. ExFAT).

§

UnexpectedEof

Unexpected EOF

§

IOError(I)

An IO error occured

Trait Implementations§

Source§

impl<I> Debug for FSError<I>
where I: Error + Debug,

Source§

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

Formats the value using the given formatter. Read more
Source§

impl<I> From<I> for FSError<I>
where I: Error,

Source§

fn from(value: I) -> Self

Converts to this type from the input type.
Source§

impl<I> From<RWFileError<I>> for FSError<I>
where I: Error,

Source§

fn from(value: RWFileError<I>) -> Self

Converts to this type from the input type.
Source§

impl<I> From<ReadExactError<I>> for FSError<I>
where I: Error,

Source§

fn from(value: ReadExactError<I>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<I> Freeze for FSError<I>
where I: Freeze,

§

impl<I> !RefUnwindSafe for FSError<I>

§

impl<I> Send for FSError<I>
where I: Send,

§

impl<I> Sync for FSError<I>
where I: Sync,

§

impl<I> Unpin for FSError<I>
where I: Unpin,

§

impl<I> !UnwindSafe for FSError<I>

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.