Сериализация класса с объектами

Сериализация / Бинарный формат

struct Size: Codable {
    var width: Int
    var height: Int
}

struct Rect: Codable {
    var size: Size
}

let rect = Rect(size: Size(
        width: 5, height: 10))

//Encoding Binary Data
let encoder = PropertyListEncoder()
encoder.outputFormat = .binary
let data_b = try! encoder.encode(rect)

//Decoding Binary Data
let decoder = PropertyListDecoder()
let rect2 = try! decoder.decode(
    Rect.self, from: data_b)
print("rect2 is \(rect2)")