7

I am currently trying the iOS 10 Beta and decided to convert my Swift code to Swift 3. Until now, I was able to securely decode a String using

coder.decodeObjectOfClass(NSString.self, forKey: CoderKeys.code) as! String

After the conversion to Swift 3, Xcode is giving me the following error:

'decodeObjectOfClass(_:forKey:)' is unavailable in Swift: use generic 'decodeObjectClass(_:forKey:)'

As I mentioned, I'm using NSSecureCoding, so unfortunately decodeObject(forKey: String) won't do. Is this a beta bug? What am I missing?

Paco1
  • 758
  • 6
  • 18

1 Answers1

13

It seems decodeObjectOfClass:forKey: is imported as generic decodeObject(of:forKey:) in Swift 3.

Try this:

coder.decodeObject(of: NSString.self, forKey: CoderKeys.code) as String?
OOPer
  • 47,149
  • 6
  • 107
  • 142