Swiftgram/submodules/SyncCore/Sources/RegularChatState.swift
2019-10-21 16:58:00 +04:00

37 lines
1.1 KiB
Swift

import Postbox
public final class RegularChatState: PeerChatState, Equatable {
public let invalidatedPts: Int32?
public init(invalidatedPts: Int32?) {
self.invalidatedPts = invalidatedPts
}
public init(decoder: PostboxDecoder) {
self.invalidatedPts = decoder.decodeOptionalInt32ForKey("ipts")
}
public func encode(_ encoder: PostboxEncoder) {
if let invalidatedPts = self.invalidatedPts {
encoder.encodeInt32(invalidatedPts, forKey: "ipts")
} else {
encoder.encodeNil(forKey: "ipts")
}
}
public func withUpdatedInvalidatedPts(_ invalidatedPts: Int32?) -> RegularChatState {
return RegularChatState(invalidatedPts: invalidatedPts)
}
public func equals(_ other: PeerChatState) -> Bool {
if let other = other as? RegularChatState, other == self {
return true
}
return false
}
public static func ==(lhs: RegularChatState, rhs: RegularChatState) -> Bool {
return lhs.invalidatedPts == rhs.invalidatedPts
}
}