pub enum RateLimitResponse<T = ResponseData> {
Success {
response: QueryResponse<T>,
rate_limit: RateLimitInfo,
},
RateLimited(RateLimitInfo),
}Expand description
Response from a _with_rate_limit method.
On a successful query the Success variant contains both the response data
and the rate limit headers. When the server responds with HTTP 429, the
RateLimited variant is returned immediately (without internal retry) so
the caller can implement their own back-off.
Variants§
Success
The query succeeded.
Fields
§
response: QueryResponse<T>The query response data.
§
rate_limit: RateLimitInfoRate limit information from response headers (if present).
RateLimited(RateLimitInfo)
The server responded with 429 Too Many Requests.
Trait Implementations§
Source§impl<T: Clone> Clone for RateLimitResponse<T>
impl<T: Clone> Clone for RateLimitResponse<T>
Source§fn clone(&self) -> RateLimitResponse<T>
fn clone(&self) -> RateLimitResponse<T>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<T> Freeze for RateLimitResponse<T>where
T: Freeze,
impl<T> RefUnwindSafe for RateLimitResponse<T>where
T: RefUnwindSafe,
impl<T> Send for RateLimitResponse<T>where
T: Send,
impl<T> Sync for RateLimitResponse<T>where
T: Sync,
impl<T> Unpin for RateLimitResponse<T>where
T: Unpin,
impl<T> UnsafeUnpin for RateLimitResponse<T>where
T: UnsafeUnpin,
impl<T> UnwindSafe for RateLimitResponse<T>where
T: UnwindSafe,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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