orbit-util / orbit.util.concurrent / AsyncMap

AsyncMap

interface AsyncMap<K, V>

Functions

compareAndSet

abstract suspend fun compareAndSet(key: K, initialValue: V?, newValue: V?): Boolean

entries

abstract suspend fun entries(): Iterable<Pair<K, V>>

get

abstract suspend fun get(key: K): V?

getOrPut

open suspend fun getOrPut(key: K, block: suspend () -> V): V

getValue

open suspend fun getValue(key: K): V

keys

open suspend fun keys(): List<K>

manipulate

open tailrec suspend fun manipulate(key: K, block: (V?) -> V?): V?

remove

abstract suspend fun remove(key: K): Boolean

set

abstract suspend fun set(key: K, value: V): Unit

values

open suspend fun values(): List<V>

Inheritors

HashMapBackedAsyncMap

abstract class HashMapBackedAsyncMap<K, V> : AsyncMap<K, V>