pub struct RateLimitMiddlewareBuilder { /* private fields */ }Expand description
Builder for RateLimitMiddleware.
Implementations§
Source§impl RateLimitMiddlewareBuilder
impl RateLimitMiddlewareBuilder
Sourcepub fn use_token_bucket_limiter(self, requests_per_second: u32) -> Self
pub fn use_token_bucket_limiter(self, requests_per_second: u32) -> Self
Configures the builder to use a TokenBucketLimiter with the specified requests per second.
Sourcepub fn limiter(self, limiter: impl RateLimiter + 'static) -> Self
pub fn limiter(self, limiter: impl RateLimiter + 'static) -> Self
Sets a specific rate limiter instance to be used.
Sourcepub fn limiter_factory(
self,
factory: impl Fn() -> Arc<dyn RateLimiter> + Send + Sync + 'static,
) -> Self
pub fn limiter_factory( self, factory: impl Fn() -> Arc<dyn RateLimiter> + Send + Sync + 'static, ) -> Self
Sets a factory function for creating rate limiters.
Sourcepub fn build(self) -> RateLimitMiddleware
pub fn build(self) -> RateLimitMiddleware
Builds the RateLimitMiddleware.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RateLimitMiddlewareBuilder
impl !RefUnwindSafe for RateLimitMiddlewareBuilder
impl Send for RateLimitMiddlewareBuilder
impl Sync for RateLimitMiddlewareBuilder
impl Unpin for RateLimitMiddlewareBuilder
impl UnsafeUnpin for RateLimitMiddlewareBuilder
impl !UnwindSafe for RateLimitMiddlewareBuilder
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