Есть ли способ создать фабричную привязку в kotlin kodein, которая может выдавать ноль?

Есть ли способ создать фабричную привязку, которая может выдавать ноль?

Например,

bind<String?> with factory { x: Int -> 
    when (x) {
        1 -> "A"
        2 -> "B"
        else -> null
    }
}

К несчастью, bind<String?> дает ошибку.

1 ответ

В конечном итоге Optional:

bind<Optional<String>> with factory { x: Int -> 
    when (x) {
        1 -> Optional.of<String>("A")
        2 -> Optional.of<String>("B")
        else -> Optional.empty()
    }
}
Другие вопросы по тегам