pub struct RateLimitConfig {
pub enabled: bool,
pub requests_per_second: u32,
pub burst_size: u32,
pub scope: RateLimitScope,
}Expand description
Rate limiting configuration.
Fields§
§enabled: boolEnable rate limiting
requests_per_second: u32Maximum requests per second
burst_size: u32Burst size (maximum concurrent requests)
scope: RateLimitScopeRate limit scope
Implementations§
Source§impl RateLimitConfig
impl RateLimitConfig
Sourcepub fn new(requests_per_second: u32, burst_size: u32) -> Self
pub fn new(requests_per_second: u32, burst_size: u32) -> Self
Create a new rate limit configuration with given requests per second.
§Example
use simple_agent_type::config::RateLimitConfig;
let config = RateLimitConfig::new(50, 100);
assert_eq!(config.requests_per_second, 50);
assert_eq!(config.burst_size, 100);
assert!(config.enabled);Create rate limit config with shared scope.
Trait Implementations§
Source§impl Clone for RateLimitConfig
impl Clone for RateLimitConfig
Source§fn clone(&self) -> RateLimitConfig
fn clone(&self) -> RateLimitConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RateLimitConfig
impl Debug for RateLimitConfig
Source§impl Default for RateLimitConfig
impl Default for RateLimitConfig
Source§impl<'de> Deserialize<'de> for RateLimitConfig
impl<'de> Deserialize<'de> for RateLimitConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for RateLimitConfig
impl PartialEq for RateLimitConfig
Source§impl Serialize for RateLimitConfig
impl Serialize for RateLimitConfig
impl StructuralPartialEq for RateLimitConfig
Auto Trait Implementations§
impl Freeze for RateLimitConfig
impl RefUnwindSafe for RateLimitConfig
impl Send for RateLimitConfig
impl Sync for RateLimitConfig
impl Unpin for RateLimitConfig
impl UnwindSafe for RateLimitConfig
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