Time Shield Library 2.0.0
C++ library for working with time
Loading...
Searching...
No Matches
legacy_aliases.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2#pragma once
3#ifndef TIME_SHIELD_HEADER_CONVERSIONS_LEGACY_ALIASES_HPP_INCLUDED
4#define TIME_SHIELD_HEADER_CONVERSIONS_LEGACY_ALIASES_HPP_INCLUDED
5
12
14
15#include <type_traits>
16
17#if defined(TIME_SHIELD_ENABLE_LEGACY_ALIASES)
18
19namespace time_shield {
20
23
26 template<class T = year_t>
27 TIME_SHIELD_CONSTEXPR T get_unix_year(ts_t ts) noexcept {
29 }
30
33 template<class T = dse_t>
34 TIME_SHIELD_CONSTEXPR T get_unix_day(ts_t ts = time_shield::ts()) noexcept {
35 return days_since_epoch<T>(ts);
36 }
37
41 template<class T = dse_t>
42 TIME_SHIELD_CONSTEXPR T get_unix_day_ms(ts_ms_t ts_ms = time_shield::ts_ms()) noexcept {
44 }
45
48 template<class T = ts_t>
49 TIME_SHIELD_CONSTEXPR T unix_day_to_timestamp(dse_t unix_day) noexcept {
51 }
52
55 template<class T = ts_t>
56 TIME_SHIELD_CONSTEXPR T unix_day_to_timestamp_ms(dse_t unix_day) noexcept {
58 }
59
62 template<class T = int64_t>
63 TIME_SHIELD_CONSTEXPR T get_unix_min(ts_t ts = time_shield::ts()) {
64 return min_since_epoch<T>(ts);
65 }
66
69 template<class T = year_t>
70 TIME_SHIELD_CONSTEXPR T get_year(ts_t ts = time_shield::ts()) {
71 return year_of<T>(ts);
72 }
73
76 template<class T = year_t>
77 TIME_SHIELD_CONSTEXPR T get_year_ms(ts_ms_t ts_ms = time_shield::ts_ms()) {
78 return year_of_ms<T>(ts_ms);
79 }
80
83 template<class T1 = Weekday, class T2,
84 typename std::enable_if<std::is_class<T2>::value, int>::type = 0>
85 TIME_SHIELD_CONSTEXPR T1 get_weekday_from_date(const T2& date) {
86 return weekday_of_date<T1>(date);
87 }
88
91 template<class T = Weekday, class U,
92 typename std::enable_if<std::is_integral<U>::value, int>::type = 0>
93 TIME_SHIELD_CONSTEXPR T get_weekday_from_ts(U ts) noexcept {
94 return weekday_of_ts<T>(ts);
95 }
96
99 template<class T = Weekday>
100 TIME_SHIELD_CONSTEXPR T get_weekday_from_ts_ms(ts_ms_t ts_ms) {
102 }
103
106 template<class T = ts_t>
107 TIME_SHIELD_CONSTEXPR T next_day_unix_day(dse_t unix_day) noexcept {
109 }
110
113 template<class T = ts_t>
114 TIME_SHIELD_CONSTEXPR T next_day_unixday(dse_t unix_day) noexcept {
116 }
117
120 template<class T = ts_ms_t>
121 TIME_SHIELD_CONSTEXPR T next_day_unix_day_ms(dse_t unix_day) noexcept {
123 }
124
127 template<class T = ts_ms_t>
128 TIME_SHIELD_CONSTEXPR T next_day_unixday_ms(dse_t unix_day) noexcept {
130 }
131
133
134} // namespace time_shield
135
136#endif // defined(TIME_SHIELD_ENABLE_LEGACY_ALIASES)
137
138#endif // TIME_SHIELD_HEADER_CONVERSIONS_LEGACY_ALIASES_HPP_INCLUDED
TIME_SHIELD_CONSTEXPR T unix_day(ts_t ts=time_shield::ts()) noexcept
Alias for days_since_epoch function.
TIME_SHIELD_CONSTEXPR T next_day_unixday_ms(dse_t unix_day) noexcept
Legacy alias for start_of_next_day_from_unix_day_ms.
TIME_SHIELD_CONSTEXPR T get_year(ts_t ts=time_shield::ts())
Legacy alias for year_of.
TIME_SHIELD_CONSTEXPR T get_unix_min(ts_t ts=time_shield::ts())
Legacy alias for min_since_epoch.
TIME_SHIELD_CONSTEXPR T get_unix_year(ts_t ts) noexcept
Legacy alias for years_since_epoch.
TIME_SHIELD_CONSTEXPR T1 get_weekday_from_date(const T2 &date)
Legacy alias for weekday_of_date.
TIME_SHIELD_CONSTEXPR T get_weekday_from_ts(U ts) noexcept
Legacy alias for weekday_of_ts.
TIME_SHIELD_CONSTEXPR T unix_day_to_timestamp(dse_t unix_day) noexcept
Legacy alias for unix_day_to_ts.
TIME_SHIELD_CONSTEXPR T1 weekday_of_date(const T2 &date)
Get the day of the week from a date structure.
TIME_SHIELD_CONSTEXPR T get_year_ms(ts_ms_t ts_ms=time_shield::ts_ms())
Legacy alias for year_of_ms.
TIME_SHIELD_CONSTEXPR T get_unix_day_ms(ts_ms_t ts_ms=time_shield::ts_ms()) noexcept
Legacy alias for days_since_epoch_ms.
TIME_SHIELD_CONSTEXPR T next_day_unix_day_ms(dse_t unix_day) noexcept
Legacy alias for start_of_next_day_from_unix_day_ms.
TIME_SHIELD_CONSTEXPR T next_day_unix_day(dse_t unix_day) noexcept
Legacy alias for start_of_next_day_from_unix_day.
TIME_SHIELD_CONSTEXPR T year_of_ms(ts_ms_t ts_ms=time_shield::ts_ms())
Get the year from the timestamp in milliseconds.
TIME_SHIELD_CONSTEXPR T next_day_unixday(dse_t unix_day) noexcept
Legacy alias for start_of_next_day_from_unix_day.
TIME_SHIELD_CONSTEXPR T get_unix_day(ts_t ts=time_shield::ts()) noexcept
Legacy alias for days_since_epoch.
TIME_SHIELD_CONSTEXPR T get_weekday_from_ts_ms(ts_ms_t ts_ms)
Legacy alias for weekday_of_ts_ms.
TIME_SHIELD_CONSTEXPR T unix_day_to_timestamp_ms(dse_t unix_day) noexcept
Legacy alias for unix_day_to_ts_ms.
TIME_SHIELD_CONSTEXPR T year_of(ts_t ts=time_shield::ts())
Get the year from the timestamp.
TIME_SHIELD_CONSTEXPR T weekday_of_ts(ts_t ts) noexcept
Get the second of the week day from a timestamp.
TIME_SHIELD_CONSTEXPR T weekday_of_ts_ms(ts_ms_t ts_ms)
Get the weekday from a timestamp in milliseconds.
int64_t ts_t
Unix timestamp in seconds since 1970‑01‑01T00:00:00Z.
Definition types.hpp:48
int64_t dse_t
Unix day count since 1970‑01‑01 (days since epoch).
Definition types.hpp:41
int64_t ts_ms_t
Unix timestamp in milliseconds since epoch.
Definition types.hpp:49
ts_t ts() noexcept
Get the current UTC timestamp in seconds.
ts_ms_t ts_ms() noexcept
Get the current UTC timestamp in milliseconds.
Main namespace for the Time Shield library.
TIME_SHIELD_CONSTEXPR T unix_day_to_ts_ms(dse_t unix_day) noexcept
Converts a UNIX day to a timestamp in milliseconds.
TIME_SHIELD_CONSTEXPR T years_since_epoch(ts_t ts) noexcept
Converts a UNIX timestamp to a year.
TIME_SHIELD_CONSTEXPR T unix_day_to_ts(dse_t unix_day) noexcept
Converts a UNIX day to a timestamp in seconds.
TIME_SHIELD_CONSTEXPR T days_since_epoch_ms(ts_ms_t t_ms=time_shield::ts_ms()) noexcept
Get UNIX day from milliseconds timestamp.
TIME_SHIELD_CONSTEXPR T start_of_next_day_from_unix_day(dse_t unix_day) noexcept
Converts a UNIX day to a timestamp representing the start of the next day in seconds.
TIME_SHIELD_CONSTEXPR T days_since_epoch(ts_t ts=time_shield::ts()) noexcept
Get UNIX day.
TIME_SHIELD_CONSTEXPR T min_since_epoch(ts_t ts=time_shield::ts())
Get UNIX minute.
TIME_SHIELD_CONSTEXPR T start_of_next_day_from_unix_day_ms(dse_t unix_day) noexcept
Converts a UNIX day to a timestamp representing the start of the next day in milliseconds.