Я хочу расширить Decodable, чтобы создать новый экземпляр класса Codable из словаря значений.
extension Decodable {
init(from dictionary: [String : Codable]) throws {
let data = try JSONSerialization.data(withJSONObject: dictionary, options: [])
let newSelf = try JSONDecoder().decode(self.type, from: data)
self = newSelf
}
}
Я получаю сообщение об ошибке Value of type 'Self' has no member 'type'
в строке, которая начинается с let newSelf = ...
Как я должен указать тип для использования здесь?