blob: 39dac5247f5b8cb94c8a58723d15a896be8da8d3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
package at.hannibal2.skyhanni.utils
import kotlin.time.Duration
class TimeLimitedSet<T>(expireAfterWrite: Duration) {
private val cache = TimeLimitedCache<T, Unit>(expireAfterWrite)
fun add(element: T) = cache.put(element, Unit)
operator fun contains(element: T): Boolean = cache.containsKey(element)
fun clear() = cache.clear()
fun toSet(): Set<T> = cache.keys().toSet()
}
|