https://kotlinlang.org logo
Title
k

kqr

05/20/2022, 6:50 PM
val x = if (y != null) y else {
    <http://log.info|log.info>("bla")
    z
}
vs
val x = y ?: run {
    <http://log.info|log.info>("bla")
    z
}
a

araqnid

05/20/2022, 6:57 PM
val x = y ?: z.also { <http://log.info|log.info>("bla") }
?
6
e

ephemient

05/20/2022, 7:03 PM
or
y ?: <http://log.info|log.info>("bla").let { z }
if you want to preserve that ordering, but that's approaching a bit codegolf-y
e

Endre Deak

05/20/2022, 8:49 PM
z.also { <http://log.info|log.info>("bla") }
seems more idiomatic.
<http://log.info|log.info>(...).let { z }
could suggest that
z
depends on the
<http://log.info|log.info>
k

kqr

05/20/2022, 10:51 PM
ty