optional

open fun <T> optional(closure: () -> T): T?