int is dead, long live long type!

This commit is contained in:
2021-03-17 23:56:02 +01:00
parent 7e561256ef
commit fcb3b4c5c5
6 changed files with 41 additions and 41 deletions

View File

@@ -1,15 +1,15 @@
#include "ml_date.h"
int now() {
long now() {
// get-universal-time
time_t t = std::time(0);
long int now = static_cast<long int>(t);
return (int) now;
return now;
}
std::string date_to_string(const int datetime, const std::string format) {
std::string date_to_string(const long datetime, const std::string format) {
// std::locale::global(std::locale("en-US.UTF8"));
time_t timestamp = datetime;
@@ -23,16 +23,16 @@ std::string date_to_string(const int datetime, const std::string format) {
return "invalid argument";
}
int string_to_date(const std::string &datestr, const std::string &format) {
long string_to_date(const std::string &datestr, const std::string &format) {
// format for example "%d.%m.%Y";
std::istringstream in{datestr.c_str()};
date::sys_seconds tp;
in >> date::parse(format, tp);
return (int) tp.time_since_epoch().count();
return tp.time_since_epoch().count();
}
int add_to_date(const int datetime, const int quantity, const std::string &part) {
long add_to_date(const long datetime, const long quantity, const std::string &part) {
// part is one of 'year', 'month', 'day', 'hour', 'minute' or 'second'
// very basic implementation, just for now - no timezones DST etc
@@ -55,5 +55,5 @@ int add_to_date(const int datetime, const int quantity, const std::string &part)
// TODO exception here
}
return (int) mktime(tm);
return mktime(tm);
}