pub enum ParseError {
Show 17 variants
Empty,
UnsupportedScheme(String),
InvalidUrl(ParseError),
MissingHost,
MissingBucket,
MissingContainer,
MissingAccount,
InvalidBucket(String),
InvalidAccount(String),
InvalidContainer(String),
CleartextHttpForbidden {
host: String,
},
UnknownAddressing(String),
InvalidFlagValue {
name: String,
value: String,
},
UnknownFlag(String),
UnknownEngine(String),
InvalidAwsS3Endpoint {
host: String,
},
BundleUriPresignTtlTooLarge {
value: u64,
max: u64,
},
}Expand description
Errors produced by parse.
Variants§
Empty
Input was empty or whitespace-only.
UnsupportedScheme(String)
Scheme is not one of the four accepted values.
InvalidUrl(ParseError)
The body after the backend prefix could not be parsed as a URL.
MissingHost
URL is missing a host component.
MissingBucket
S3 path-style URL is missing the first path segment (the bucket).
MissingContainer
Azure virtual-hosted URL is missing the first path segment (the container) — or path-style is missing the second path segment.
MissingAccount
Azure path-style URL is missing the first path segment (the account).
InvalidBucket(String)
Bucket name does not match the S3 charset rules in §3.5.
InvalidAccount(String)
Storage-account name does not match the Azure rules in §3.5.
InvalidContainer(String)
Container name does not match the Azure rules in §3.5.
CleartextHttpForbidden
Cleartext *+http:// against a non-loopback host without the
override env var.
UnknownAddressing(String)
?addressing= value other than path or virtual.
InvalidFlagValue
A known flag had a value outside its accepted set.
UnknownFlag(String)
A query parameter is not part of the documented flag set.
UnknownEngine(String)
?engine= value is not a recognised engine name.
InvalidAwsS3Endpoint
An amazonaws.com hostname that cannot be a valid S3 endpoint.
Valid patterns are:
- virtual-hosted:
<bucket>.s3[.<region>].amazonaws.com - path-style:
s3[.<region>|-<region>].amazonaws.com
BundleUriPresignTtlTooLarge
?bundle_uri_presign_ttl=<seconds> exceeded
[MAX_BUNDLE_URI_PRESIGN_TTL_SECONDS] (7 days). Rejecting at
the URL boundary prevents a degenerate value from reaching the
AWS SDK (which rejects > 7 days anyway) or the Azure SAS
builder (which previously panicked on u64::MAX). Issue #219.
Trait Implementations§
Source§impl Debug for ParseError
impl Debug for ParseError
Source§impl Display for ParseError
impl Display for ParseError
Source§impl Error for ParseError
impl Error for ParseError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<ParseError> for ParseError
impl From<ParseError> for ParseError
Source§fn from(source: ParseError) -> Self
fn from(source: ParseError) -> Self
Source§impl From<ParseError> for RemoteError
impl From<ParseError> for RemoteError
Source§fn from(source: ParseError) -> Self
fn from(source: ParseError) -> Self
Source§impl PartialEq for ParseError
impl PartialEq for ParseError
Source§fn eq(&self, other: &ParseError) -> bool
fn eq(&self, other: &ParseError) -> bool
self and other values to be equal, and is used by ==.impl Eq for ParseError
impl StructuralPartialEq for ParseError
Auto Trait Implementations§
impl Freeze for ParseError
impl RefUnwindSafe for ParseError
impl Send for ParseError
impl Sync for ParseError
impl Unpin for ParseError
impl UnsafeUnpin for ParseError
impl UnwindSafe for ParseError
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<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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> ErrorExt for T
impl<T> ErrorExt for T
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 moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.