comparison include/core/date.h @ 9:5c0397762b53

INCOMPLETE: megacommit :)
author Paper <mrpapersonic@gmail.com>
date Sun, 10 Sep 2023 03:59:16 -0400
parents
children d8eb763e6661
comparison
equal deleted inserted replaced
8:b1f73678ef61 9:5c0397762b53
1 #ifndef __core__date_h
2 #define __core__date_h
3 #include "json.h"
4 #include <QDate>
5 #include <cstdint>
6 class Date {
7 public:
8 Date();
9 Date(int32_t y);
10 Date(int32_t y, int8_t m, int8_t d);
11 void SetYear(int32_t y);
12 void SetMonth(int8_t m);
13 void SetDay(int8_t d);
14 void VoidYear();
15 void VoidMonth();
16 void VoidDay();
17 int32_t GetYear() const;
18 int8_t GetMonth() const;
19 int8_t GetDay() const;
20 QDate GetAsQDate() const;
21 nlohmann::json GetAsAniListJson() const;
22 bool operator<(const Date& other) const;
23 bool operator>(const Date& other) const;
24 bool operator<=(const Date& other) const;
25 bool operator>=(const Date& other) const;
26
27 private:
28 std::shared_ptr<int32_t> year;
29 std::shared_ptr<int8_t> month;
30 std::shared_ptr<int8_t> day;
31 };
32 #endif // __core__date_h