[#BloombergLP-balb-RateLimiter-supportsRateLimitsExactly] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balb.adoc[balb]::xref:BloombergLP/balb/RateLimiter.adoc[RateLimiter]::supportsRateLimitsExactly :relfileprefix: ../../../ :mrdocs: Returns `true` if, supposing the specified `sustainedRateLimit`, `sustainedRateWindow`, `peakRateLimit`, and `peakRateWindow` are used to initialize a `RateLimiter` object, the corresponding query methods return the same values. The implementation of `RateLimiter` uses `balb::LeakyBucket` objects, and for some combinations of values the capacity of the `balb::LeakyBucket` is rounded such that the rederived values differ. Note that this method is most likely to return `true` when the product of each corresponding pair of limit and window (as a fraction of a second) is integral. == Synopsis Declared in `<balb_ratelimiter.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static bool supportsRateLimitsExactly( xref:BloombergLP/bsls/Types/Uint64.adoc[bsls::Types::Uint64] sustainedRateLimit, xref:BloombergLP/bsls/TimeInterval.adoc[bsls::TimeInterval] const& sustainedRateWindow, xref:BloombergLP/bsls/Types/Uint64.adoc[bsls::Types::Uint64] peakRateLimit, xref:BloombergLP/bsls/TimeInterval.adoc[bsls::TimeInterval] const& peakRateWindow); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#