getOrPut

inline fun <T> FastIntMap<T>.getOrPut(key: Int, callback: () -> T): T
inline fun <T> FastStringMap<T>.getOrPut(key: String, callback: () -> T): T
inline fun <K, V> FastIdentityMap<K, V>.getOrPut(key: K, callback: (K) -> V): V
inline fun <K : Any, V> WeakMap<K, V>.getOrPut(key: K, value: (K) -> V): V