swift 4.2 - как я могу проверить с помощью guard, если var имеет допустимое значение enum - PullRequest
0 голосов
/ 10 октября 2018

Мне нужно проверить, является ли переменная, переданная функцией, допустимым значением перечисления.Не само по себе, но в качестве примера здесь.

enum CollectionDict : String {  // Mapping to String Model = "Model" or should I ...
    case Model
    case Type
    case Element
    case ....
}

....
guard  InColectionDict != CollectionDict else { return false }
....

Очевидно, что моя линия охранников образца неверна.Что я должен использовать или сделать, чтобы получить право защиты или, по крайней мере, просто сравнить / проверить переменную InColectionDict с enum CollectionDict в одной строке?

Я надеялся сойти с рук ..

func makeItem ( _ item: String , with key : String , inCollection : CollectionDict ) -> Bool {
    guard let res = CollectionDict.inCollection else { return false }

Но это дает мне ошибку.Конечно, заранее спасибо.

1 Ответ

0 голосов
/ 10 октября 2018

Свифт строго типизирован.Если ваша функция имеет необязательный параметр Enum, то во время выполнения она гарантированно будет действительным значением enum.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...