diff --git a/samples/client/petstore/swift3/default/PetstoreClient/Classes/Swaggers/Models.swift b/samples/client/petstore/swift3/default/PetstoreClient/Classes/Swaggers/Models.swift index 1258d5940df..e129dd2323f 100644 --- a/samples/client/petstore/swift3/default/PetstoreClient/Classes/Swaggers/Models.swift +++ b/samples/client/petstore/swift3/default/PetstoreClient/Classes/Swaggers/Models.swift @@ -125,12 +125,12 @@ class Decoders { static func decode(clazz: T.Type, source: AnyObject, instance: AnyObject?) -> Decoded { initialize() - if let value = source.int32Value as? T, source is NSNumber, T.self is Int32.Type { - return .success(value) - } - if let value = source.int32Value as? T, source is NSNumber, T.self is Int64.Type { - return .success(value) - } + if let sourceNumber = source as? NSNumber, let value = sourceNumber.int32Value as? T, T.self is Int32.Type { + return .success(value) + } + if let sourceNumber = source as? NSNumber, let value = sourceNumber.int32Value as? T, T.self is Int64.Type { + return .success(value) + } if let intermediate = source as? String, let value = UUID(uuidString: intermediate) as? T, source is String, T.self is UUID.Type { return .success(value) }