Я разрабатываю контракт, и у нас есть сообщение, содержащее перечисление, но оно имеет только одно возможное значение. Для будущего доказательства я хотел убедиться, что я использовал перечисление, чтобы любые дополнительные значения, которые могли бы быть добавлены, не требовали бы большой работы. Так что я сделал это:Инициализировать Enum только одним случаем через rawValue
enum MyEnumeration: String {
case Case1 = "ValueFromContract"
}
И когда я читаю сообщение, я пытался инициализировать мой перечисление следующим образом:
let myEnum = MyEnumeration(rawValue: "ValueFromContract")
MyEnum затем устанавливается на значение Some, которое, очевидно, не то, что я хотеть. Я разрабатываю Xcode 6.1.1, и это может быть не проблема в более поздних версиях Swift.
Странно, возможно, есть что-то еще, предотвращающее его, но это не сработает для меня, если у меня не будет нескольких случаев. – Joe