Если у вас действительно есть Set, как показывает вывод Optional(Set(["6", "14"]))
, то это не Массив (что и есть [String]
). Таким образом, ваш тест as? [String]
обречен на провал, и вы получите nil
. Вы не можете разыграть (используя as
) вещь одного типа к другому типу, который не является.
Вместо этого вы должны принудительно из Set to Array. Сделайте это так:
if let theSet = values["field_name"] as? Set<String> {
incidents = Array(theSet)
}