#[non_exhaustive]
pub enum ApiError<E>where
E: Error + Send + Sync + 'static,{
Client {
source: E,
},
UrlParse {
source: ParseError,
},
Body {
source: BodyError,
},
Json {
source: Error,
},
Gitlab {
msg: String,
},
GitlabService {
status: StatusCode,
data: Vec<u8>,
},
GitlabObject {
obj: Value,
},
GitlabUnrecognized {
obj: Value,
},
DataType {
source: Error,
typename: &'static str,
},
Pagination {
source: PaginationError,
},
}
Expand description
Errors which may occur when using API endpoints.
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.
Client
The client encountered an error.
UrlParse
Fields
source: ParseError
The source of the error.
The URL failed to parse.
Body
Fields
source: BodyError
The source of the error.
Body data could not be created.
Json
Fields
source: Error
The source of the error.
JSON deserialization from GitLab failed.
Gitlab
Fields
msg: String
The error message from GitLab.
GitLab returned an error message.
GitlabService
GitLab returned an error without JSON information.
GitlabObject
Fields
obj: Value
The error object from GitLab.
GitLab returned an error object.
GitlabUnrecognized
Fields
obj: Value
The full object from GitLab.
GitLab returned an HTTP error with JSON we did not recognize.
DataType
Fields
source: Error
The source of the error.
typename: &'static str
The name of the type that could not be deserialized.
Failed to parse an expected data type from JSON.
Pagination
Fields
source: PaginationError
The source of the error.
An error with pagination occurred.
Implementations
Trait Implementations
sourceimpl<E> Error for ApiError<E>where
E: Error + Send + Sync + 'static,
E: Error + 'static,
Self: Debug + Display,
impl<E> Error for ApiError<E>where
E: Error + Send + Sync + 'static,
E: Error + 'static,
Self: Debug + Display,
sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
sourceimpl From<ApiError<RestError>> for GitlabError
impl From<ApiError<RestError>> for GitlabError
sourceimpl<E> From<PaginationError> for ApiError<E>where
E: Error + Send + Sync + 'static,
impl<E> From<PaginationError> for ApiError<E>where
E: Error + Send + Sync + 'static,
sourcefn from(source: PaginationError) -> Self
fn from(source: PaginationError) -> Self
Converts to this type from the input type.
sourceimpl<E> From<ParseError> for ApiError<E>where
E: Error + Send + Sync + 'static,
impl<E> From<ParseError> for ApiError<E>where
E: Error + Send + Sync + 'static,
sourcefn from(source: ParseError) -> Self
fn from(source: ParseError) -> Self
Converts to this type from the input type.
Auto Trait Implementations
impl<E> !RefUnwindSafe for ApiError<E>
impl<E> Send for ApiError<E>
impl<E> Sync for ApiError<E>
impl<E> Unpin for ApiError<E>where
E: Unpin,
impl<E> !UnwindSafe for ApiError<E>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more