Refactor SyncCore

This commit is contained in:
Peter
2019-10-21 16:58:00 +04:00
parent 75aa77faa8
commit 10692a323e
1162 changed files with 12205 additions and 10925 deletions

View File

@@ -0,0 +1,33 @@
import Postbox
public final class SuggestedLocalizationEntry: PreferencesEntry {
public let languageCode: String
public let isSeen: Bool
public init(languageCode: String, isSeen: Bool) {
self.languageCode = languageCode
self.isSeen = isSeen
}
public init(decoder: PostboxDecoder) {
self.languageCode = decoder.decodeStringForKey("lc", orElse: "en")
self.isSeen = decoder.decodeInt32ForKey("s", orElse: 0) != 0
}
public func encode(_ encoder: PostboxEncoder) {
encoder.encodeString(self.languageCode, forKey: "lc")
encoder.encodeInt32(self.isSeen ? 1 : 0, forKey: "s")
}
public func isEqual(to: PreferencesEntry) -> Bool {
if let to = to as? SuggestedLocalizationEntry {
return self == to
} else {
return false
}
}
public static func ==(lhs: SuggestedLocalizationEntry, rhs: SuggestedLocalizationEntry) -> Bool {
return lhs.languageCode == rhs.languageCode && lhs.isSeen == rhs.isSeen
}
}