2025-07-17 15:16:37 +03:00

22 lines
538 B
Nim

import std/[times, options]
import ./store
import chronos
# Memory Implementation
type MemoryRateLimitStore* = ref object
bucketState: Option[BucketState]
proc new*(T: type[MemoryRateLimitStore]): T =
return T(bucketState: none(BucketState))
proc saveBucketState*(
store: MemoryRateLimitStore, bucketState: BucketState
): Future[bool] {.async.} =
store.bucketState = some(bucketState)
return true
proc loadBucketState*(
store: MemoryRateLimitStore
): Future[Option[BucketState]] {.async.} =
return store.bucketState