Mercurial > minori
view include/core/date.h @ 242:82470f83f0c2
autotools: make windows build work
also, I've added back the method I made for getting the vars as
variables rather than separate files, so less clutter in tmp folders :)
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Mon, 22 Jan 2024 19:06:23 -0800 |
parents | c4ca035c565d |
children | 862d0d8619f6 |
line wrap: on
line source
#ifndef __core__date_h #define __core__date_h #include "json/json_fwd.hpp" #include <optional> class QDate; class Date { public: Date(); Date(unsigned int y); Date(unsigned int y, unsigned int m, unsigned int d); Date(const QDate& date); Date(const nlohmann::json& json); bool IsValid() const; void SetYear(unsigned int y); void SetMonth(unsigned int m); void SetDay(unsigned int d); void VoidYear(); void VoidMonth(); void VoidDay(); std::optional<unsigned int> GetYear() const; std::optional<unsigned int> GetMonth() const; std::optional<unsigned int> GetDay() const; QDate GetAsQDate() const; nlohmann::json GetAsAniListJson() const; private: std::optional<unsigned int> year; std::optional<unsigned int> month; std::optional<unsigned int> day; }; #endif // __core__date_h