#[non_exhaustive]pub enum ListError {
NotFound,
PermissionDenied,
AuthRequired(SharedString),
Disconnected(SharedString),
Other(SharedString),
}Expand description
Why a source could not list a directory. The picker shows the message and, for a failure that waiting can fix, an action: Retry for a lost connection or an error, and “Sign in” for a source that needs the user to log in, which calls the application’s own handler.
A source returns one from list for any failure. An io::Error
converts into the matching variant.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
NotFound
The directory does not exist.
PermissionDenied
The user may not list the directory.
AuthRequired(SharedString)
The source needs the user to sign in. The text says why, and is shown to the user.
Disconnected(SharedString)
The connection to the source was lost. The text says what happened, and is shown to the user.
Other(SharedString)
Any other failure. The text is shown to the user.
Implementations§
Source§impl ListError
impl ListError
Sourcepub fn message(&self) -> SharedString
pub fn message(&self) -> SharedString
The text the picker shows.
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Whether asking again can succeed, which gives the list a Retry action.
Sourcepub fn needs_sign_in(&self) -> bool
pub fn needs_sign_in(&self) -> bool
Whether the user must sign in, which gives the list a “Sign in” action.
Trait Implementations§
impl Eq for ListError
impl StructuralPartialEq for ListError
Auto Trait Implementations§
impl Freeze for ListError
impl RefUnwindSafe for ListError
impl Send for ListError
impl Sync for ListError
impl Unpin for ListError
impl UnsafeUnpin for ListError
impl UnwindSafe for ListError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more