46 lines
1.0 KiB
Swift
46 lines
1.0 KiB
Swift
import Foundation
|
|
|
|
struct MeasurementDailyCount {
|
|
|
|
var dateIndex: Int
|
|
|
|
var count: Int
|
|
|
|
var date: Date {
|
|
.init(dateIndex: dateIndex)
|
|
}
|
|
}
|
|
|
|
extension MeasurementDailyCount: Codable {
|
|
|
|
init(from decoder: Decoder) throws {
|
|
var container = try decoder.unkeyedContainer()
|
|
self.dateIndex = try container.decode(Int.self)
|
|
self.count = try container.decode(Int.self)
|
|
}
|
|
|
|
func encode(to encoder: Encoder) throws {
|
|
var container = encoder.unkeyedContainer()
|
|
try container.encode(dateIndex)
|
|
try container.encode(count)
|
|
}
|
|
}
|
|
|
|
extension MeasurementDailyCount: Comparable {
|
|
|
|
static func < (lhs: MeasurementDailyCount, rhs: MeasurementDailyCount) -> Bool {
|
|
lhs.dateIndex < rhs.dateIndex
|
|
}
|
|
|
|
static func == (lhs: MeasurementDailyCount, rhs: MeasurementDailyCount) -> Bool {
|
|
lhs.dateIndex == rhs.dateIndex
|
|
}
|
|
}
|
|
|
|
extension MeasurementDailyCount: Identifiable {
|
|
|
|
var id: Int {
|
|
dateIndex
|
|
}
|
|
}
|