Как безопасно развернуть необязательное при фильтрации - PullRequest
0 голосов
/ 09 июля 2020

В настоящее время у меня есть фрагмент кода, в котором используется оператор bam, но его нужно развернуть:

 if let tagIds = location.tagIds, !filterSet.matchesTags(tagIds as! [String]) {
            return false
        }

Я пытался использовать охранник:

  guard  let tagIds = location.tagIds, let tapgIdsString = tagIds as? [String] else {return}, !filterSet.matchesTags(tapgIdsString) {
            return false
        }

, но он вызывает ошибка, "непустая функция должна возвращать значение"

1 Ответ

0 голосов
/ 09 июля 2020

Трудно ответить, не зная, как все объявлено, но похоже, что вы могли бы сказать

if let tagIds = location.tagIds as? [String], !filterSet.matchesTags(tagIds)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...