mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Add explicit gift availability decoding
This commit is contained in:
parent
fd0c7918ff
commit
da86483d66
@ -75,6 +75,14 @@ public enum StarGift: Equatable, Codable, PostboxCoding {
|
||||
self.minResaleStars = minResaleStars
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self.remains = try container.decode(Int32.self, forKey: .remains)
|
||||
self.total = try container.decode(Int32.self, forKey: .total)
|
||||
self.resale = (try? container.decodeIfPresent(Int64.self, forKey: .resale)) ?? 0
|
||||
self.minResaleStars = try? container.decodeIfPresent(Int64.self, forKey: .minResaleStars)
|
||||
}
|
||||
|
||||
public init(decoder: PostboxDecoder) {
|
||||
self.remains = decoder.decodeInt32ForKey(CodingKeys.remains.rawValue, orElse: 0)
|
||||
self.total = decoder.decodeInt32ForKey(CodingKeys.total.rawValue, orElse: 0)
|
||||
@ -82,6 +90,14 @@ public enum StarGift: Equatable, Codable, PostboxCoding {
|
||||
self.minResaleStars = decoder.decodeInt64ForKey(CodingKeys.minResaleStars.rawValue, orElse: 0)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
try container.encode(self.remains, forKey: .remains)
|
||||
try container.encode(self.total, forKey: .total)
|
||||
try container.encode(self.resale, forKey: .resale)
|
||||
try container.encodeIfPresent(self.minResaleStars, forKey: .minResaleStars)
|
||||
}
|
||||
|
||||
public func encode(_ encoder: PostboxEncoder) {
|
||||
encoder.encodeInt32(self.remains, forKey: CodingKeys.remains.rawValue)
|
||||
encoder.encodeInt32(self.total, forKey: CodingKeys.total.rawValue)
|
||||
|
Loading…
x
Reference in New Issue
Block a user