Codificar y decodificar enumeración en Swift 1.2

Tengo una enum en mi class Swift y una variable declarada. Necesito codificar y decodificar usando NSCoder . Hay muchas preguntas sobre este dicho que debo usar rawValue . Enum se declara de la siguiente manera:

 enum ConnectionType { case Digital, PWM } 

Pero en Swift 1.2 no hay tal inicializador. ¿Cómo hacer eso en Swift 1.2 y Xcode 6.3?

Tienes que definir un "tipo sin formatting" para la enumeración, por ejemplo

 enum ConnectionType : Int { case Digital, PWM } 

Entonces puedes codificarlo con

 aCoder.encodeInteger(type.rawValue, forKey: "type") 

y decodificar con

 type = ConnectionType(rawValue: aDecoder.decodeIntegerForKey("type")) ?? .Digital 

donde el operador nil-coalescing ?? se utiliza para proporcionar un valor pnetworkingeterminado si el integer decodificado no es válido para la enumeración.