inline fun T.use(block: (T) -> R): R { return block(this) } fun foo() { 42.use { it.toString() } }