15 using Clock = std::chrono::steady_clock;
23 Ratelimit(
const std::chrono::milliseconds &dur) : dur(dur), last(
Clock::time_point{}) { }
26 void reset() { last = Clock::time_point{}; }
33 const auto now = Clock::now();
34 if (last + dur < now) {
42 const std::chrono::milliseconds dur;
43 Clock::time_point last;
bool limit()
Limit actions to one per constructor's dur.
Definition Ratelimit.h:32
void reset()
Start counting from now.
Definition Ratelimit.h:26
std::chrono::steady_clock Clock
Clock used for measuring.
Definition Ratelimit.h:15
Ratelimit(const std::chrono::milliseconds &dur)
Construct new Ratelimit, allowing action to be once per dur.
Definition Ratelimit.h:23