Mercurial > minori
comparison src/core/date.cpp @ 63:3d2decf093bb
*: fix many clang warnings
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Sun, 01 Oct 2023 06:39:47 -0400 |
| parents | 75c804f713b2 |
| children | 6f7385bd334c |
comparison
equal
deleted
inserted
replaced
| 62:4c6dd5999b39 | 63:3d2decf093bb |
|---|---|
| 1 #include "core/date.h" | 1 #include "core/date.h" |
| 2 #include "core/json.h" | 2 #include "core/json.h" |
| 3 #include <QDate> | 3 #include <QDate> |
| 4 #include <QDebug> | 4 #include <QDebug> |
| 5 #include <algorithm> | |
| 5 #include <cstdint> | 6 #include <cstdint> |
| 6 #include <tuple> | 7 #include <tuple> |
| 7 | 8 |
| 8 /* An implementation of AniList's "fuzzy date" */ | 9 /* An implementation of AniList's "fuzzy date" */ |
| 9 | 10 |
| 10 #define MIN(A, B) \ | 11 #define CLAMP(x, low, high) (std::max(low, std::min(high, x))) |
| 11 ({ \ | |
| 12 __typeof__(A) __a = (A); \ | |
| 13 __typeof__(B) __b = (B); \ | |
| 14 __a < __b ? __a : __b; \ | |
| 15 }) | |
| 16 #define MAX(A, B) \ | |
| 17 ({ \ | |
| 18 __typeof__(A) __a = (A); \ | |
| 19 __typeof__(B) __b = (B); \ | |
| 20 __a < __b ? __b : __a; \ | |
| 21 }) | |
| 22 | |
| 23 #define CLAMP(x, low, high) \ | |
| 24 ({ \ | |
| 25 __typeof__(x) __x = (x); \ | |
| 26 __typeof__(low) __low = (low); \ | |
| 27 __typeof__(high) __high = (high); \ | |
| 28 __x > __high ? __high : (__x < __low ? __low : __x); \ | |
| 29 }) | |
| 30 | 12 |
| 31 Date::Date() { | 13 Date::Date() { |
| 32 } | 14 } |
| 33 | 15 |
| 34 Date::Date(unsigned int y) { | 16 Date::Date(unsigned int y) { |
| 58 void Date::VoidDay() { | 40 void Date::VoidDay() { |
| 59 day.reset(); | 41 day.reset(); |
| 60 } | 42 } |
| 61 | 43 |
| 62 void Date::SetYear(unsigned int y) { | 44 void Date::SetYear(unsigned int y) { |
| 63 year.reset(new unsigned int(MAX(0U, y))); | 45 year.reset(new unsigned int(y)); |
| 64 } | 46 } |
| 65 | 47 |
| 66 void Date::SetMonth(unsigned int m) { | 48 void Date::SetMonth(unsigned int m) { |
| 67 month.reset(new unsigned int(CLAMP(m, 1U, 12U))); | 49 month.reset(new unsigned int(CLAMP(m, 1U, 12U))); |
| 68 } | 50 } |
