``` suspend fun <K, V> Cache<K, AsyncLazy...
# coroutines
e
Copy code
suspend fun <K, V> Cache<K, AsyncLazy<V>>.cached(key: K, valueSupplier: suspend () -> V) =
    get(key, Callable<AsyncLazy<V>> {
        // The following line does not work as of 1.1-M04 yet:
        // asyncLazy { valueSupplier() }
        // So here is a work-around
        AsyncLazyImpl<V>().apply { valueSupplier.startCoroutine(completion = this) }
    }).value()