Advertisement
Guest User

Untitled

a guest
Oct 15th, 2021
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 0.72 KB | None | 0 0
  1. import Foundation
  2.  
  3. struct Codables {
  4.     struct Insect: Codable {
  5.         let name: String
  6.     }
  7.    
  8.     struct Bee: Insect {
  9.         let wingCount: Int
  10.     }
  11.  
  12.     struct Beetle: Insect {
  13.         let hasHorn: Bool
  14.     }
  15.  
  16.     func work() {
  17.  
  18.         let bee = Bee(name: "Maya", wingCount: 4)
  19.         let beetle = Beetle(name: "Juice", hasHorn: false)
  20.         let encoder = JSONEncoder()
  21.         let insects: [Insect] = [bee, beetle]
  22.         let data = try! encoder.encode(insects)
  23.  
  24.         let restoredInsects = try! JSONDecoder().decode([Insect].self, from: data)
  25.         print(restoredInsects)
  26.  
  27.         // Insect(name: "Maya")
  28.         // Insect(name: "Beetle")
  29.         // no wings/horn info was decoded, however data contains it
  30.     }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement