У меня есть одна функция Future [Option [String]].Мне нужно получить преобразованную строку, только если будущее было успешным и строка существует.В других случаях мне нужно получить только None (без каких-либо ошибок или исключений)
Я пытался использовать для понимания (а также карты / flatMaps), но, очевидно, мой результат - тип Nothing вместо Option [String].
def getOption: Option[String]
def getOptionResult: Future[Option[String]]
def someActions: String
val resultO: Option[String] = for {
myString: String <- getOption
optionResult: Option[String] <- getOptionResult
result: String <- optionResult
} yield {
someActions(result)
}
Какой самый элегантный способ справиться с такими ситуациями?