mirror of
https://github.com/bitwarden/ios.git
synced 2025-12-11 04:34:55 -06:00
25 lines
562 B
Swift
25 lines
562 B
Swift
struct AnyCodingKey: CodingKey, Equatable {
|
|
var stringValue: String
|
|
var intValue: Int?
|
|
|
|
init?(stringValue: String) {
|
|
self.stringValue = stringValue
|
|
intValue = nil
|
|
}
|
|
|
|
init?(intValue: Int) {
|
|
stringValue = "\(intValue)"
|
|
self.intValue = intValue
|
|
}
|
|
|
|
init<Key>(_ base: Key) where Key: CodingKey {
|
|
if let intValue = base.intValue {
|
|
self.init(intValue: intValue)!
|
|
} else {
|
|
self.init(stringValue: base.stringValue)!
|
|
}
|
|
}
|
|
}
|
|
|
|
extension AnyCodingKey: Hashable {}
|