getAndUpdate

fun getAndUpdate(f: (T) -> T): T