31 class CLASS_DECL_ACME time :
40 constexpr time()
noexcept;
42 inline time(
now_t) noexcept : posix_time(
now_t{}) { }
46 constexpr time(
const posix_time & time)
noexcept;
48 time(::i32 nYear, ::i32 nMonth, ::i32 nDay, ::i32 nHour, ::i32 nMin, ::i32 nSec,
49 const class ::time ×hift = {});
51 explicit time(const ::earth::gregorian_time & gregoriantime,
52 const class ::time & timeshift = {});
54 const class ::time & timeshift = {});
55 explicit time(const ::system_time & systemtime,
56 const class ::time & timeshift = {});
59 time(::u16 wDosDate, ::u16 wDosTime, ::i32 nDST = -1);
63 static time now()
noexcept;
64 static time now(
const class ::time& timeshift)
noexcept;
65 static time midnight(
const class ::time& timeshift = {})
noexcept;
67 static time midnight(const ::earth::time & time,
const class ::time& timeshift = {})
noexcept;
69 void Now() { *
this = now(); }
70 void Null() { *
this = posix_time({
posix_time_t{}, 0 }); }
73 constexpr time &operator=(
const time &time)
noexcept;
76 bool is_null_or_positive()
const {
return m_iSecond >= 0; }
78 bool is_positive()
const {
return m_iSecond > 0; }
84 constexpr time &operator +=(
time_span span)
noexcept;
86 constexpr time &operator-=(
time_span span)
noexcept;
91 constexpr class ::time operator % (class ::time & time)
const noexcept
94 return ((class ::time)*
this) % time;
98 constexpr time_span operator-(time time)
const noexcept;
100 constexpr time operator-(
time_span span)
const noexcept;
102 constexpr time operator +(
time_span span)
const noexcept;
108 constexpr time operator +(class ::time & time)
const;
113 constexpr bool operator==(time time)
const noexcept;
117 constexpr ::std::strong_ordering operator<=>(
::earth::time time)
const noexcept;
125 posix_time get_time()
const noexcept;
127 ::i32 year(
const class ::time ×hift = {})
const noexcept;
129 ::i32 month(
const class ::time ×hift = {})
const noexcept;
131 ::i32 day(
const class ::time ×hift = {})
const noexcept;
133 ::i32 hour(
const class ::time ×hift = {})
const noexcept;
135 ::i32 minute(
const class ::time ×hift = {})
const noexcept;
137 ::i32 second(
const class ::time ×hift = {})
const noexcept;
139 ::i32 day_of_week(
const class ::time ×hift = {})
const noexcept;
142 time get_sunday(
const class ::time ×hift = {})
const;
144 posix_time time_of_day(
const class ::time ×hift = {})
const noexcept;
146 ::i64 day_sig(
const class ::time ×hift = {})
const noexcept;
151 time_span abs_diff(const ::earth::time &time)
const;
154 bool operator == (
const class ::time & time)
const; \
155 ::std::strong_ordering operator <=> (
const class ::time & time)
const;
158 ::i64 total_minutes(
const class ::time & timeshift = {})
const noexcept;