1 | #include <chrono> |
2 | #include <iostream> |
3 | |
4 | int main() { |
5 | // break here |
6 | std::chrono::nanoseconds ns{1}; |
7 | std::chrono::microseconds us{12}; |
8 | std::chrono::milliseconds ms{123}; |
9 | std::chrono::seconds s{1234}; |
10 | std::chrono::minutes min{12345}; |
11 | std::chrono::hours h{123456}; |
12 | |
13 | std::chrono::days d{654321}; |
14 | std::chrono::weeks w{54321}; |
15 | std::chrono::months m{4321}; |
16 | std::chrono::years y{321}; |
17 | |
18 | // sys_seconds aliasses |
19 | std::chrono::time_point<std::chrono::system_clock, std::chrono::seconds> |
20 | ss_tp{std::chrono::seconds{0}}; |
21 | std::chrono::time_point<std::chrono::system_clock, |
22 | std::chrono::duration<long long>> |
23 | ss_tp_d{std::chrono::seconds{0}}; |
24 | std::chrono::time_point<std::chrono::system_clock, |
25 | std::chrono::duration<long long, std::ratio<1>>> |
26 | ss_tp_d_r{std::chrono::seconds{0}}; |
27 | std::chrono::time_point<std::chrono::system_clock, |
28 | std::chrono::duration<long long, std::ratio<1>>> |
29 | ss_tp_d_r2{std::chrono::seconds{0}}; |
30 | |
31 | // sys_seconds |
32 | std::chrono::sys_seconds ss_0{std::chrono::seconds{0}}; |
33 | std::chrono::sys_seconds ss_neg_date_time{ |
34 | std::chrono::seconds{-1'096'193'779'200}}; |
35 | std::chrono::sys_seconds ss_neg_seconds{ |
36 | std::chrono::seconds{-1'096'193'779'201}}; |
37 | std::chrono::sys_seconds ss_pos_date_time{ |
38 | std::chrono::seconds{971'890'963'199}}; |
39 | std::chrono::sys_seconds ss_pos_seconds{ |
40 | std::chrono::seconds{971'890'963'200}}; |
41 | std::chrono::sys_seconds ss_min{ |
42 | std::chrono::seconds{std::numeric_limits<long long>::min()}}; |
43 | std::chrono::sys_seconds ss_max{ |
44 | std::chrono::seconds{std::numeric_limits<long long>::max()}}; |
45 | |
46 | // sys_days aliasses |
47 | std::chrono::time_point<std::chrono::system_clock, std::chrono::days> sd_tp{ |
48 | std::chrono::days{0}}; |
49 | std::chrono::time_point<std::chrono::system_clock, |
50 | std::chrono::duration<int, std::ratio<86400>>> |
51 | sd_tp_d_r{std::chrono::days{0}}; |
52 | std::chrono::time_point<std::chrono::system_clock, |
53 | std::chrono::duration<int, std::ratio<86400, 1>>> |
54 | sd_tp_d_r2{std::chrono::days{0}}; |
55 | |
56 | // sys_days |
57 | std::chrono::sys_days sd_0{std::chrono::days{0}}; |
58 | |
59 | std::chrono::sys_days sd_neg_date{std::chrono::days{-12'687'428}}; |
60 | std::chrono::sys_days sd_neg_days{std::chrono::days{-12'687'429}}; |
61 | |
62 | std::chrono::sys_days sd_pos_date{std::chrono::days{11'248'737}}; |
63 | std::chrono::sys_days sd_pos_days{std::chrono::days{11'248'738}}; |
64 | |
65 | std::chrono::sys_days sd_min{ |
66 | std::chrono::days{std::numeric_limits<int>::min()}}; |
67 | std::chrono::sys_days sd_max{ |
68 | std::chrono::days{std::numeric_limits<int>::max()}}; |
69 | |
70 | // local_seconds aliasses |
71 | std::chrono::time_point<std::chrono::local_t, std::chrono::seconds> ls_tp{ |
72 | std::chrono::seconds{0}}; |
73 | std::chrono::time_point<std::chrono::local_t, |
74 | std::chrono::duration<long long>> |
75 | ls_tp_d{std::chrono::seconds{0}}; |
76 | std::chrono::time_point<std::chrono::local_t, |
77 | std::chrono::duration<long long, std::ratio<1>>> |
78 | ls_tp_d_r{std::chrono::seconds{0}}; |
79 | std::chrono::time_point<std::chrono::local_t, |
80 | std::chrono::duration<long long, std::ratio<1>>> |
81 | ls_tp_d_r2{std::chrono::seconds{0}}; |
82 | |
83 | // local_seconds |
84 | std::chrono::local_seconds ls_0{std::chrono::seconds{0}}; |
85 | std::chrono::local_seconds ls_neg_date_time{ |
86 | std::chrono::seconds{-1'096'193'779'200}}; |
87 | std::chrono::local_seconds ls_neg_seconds{ |
88 | std::chrono::seconds{-1'096'193'779'201}}; |
89 | std::chrono::local_seconds ls_pos_date_time{ |
90 | std::chrono::seconds{971'890'963'199}}; |
91 | std::chrono::local_seconds ls_pos_seconds{ |
92 | std::chrono::seconds{971'890'963'200}}; |
93 | std::chrono::local_seconds ls_min{ |
94 | std::chrono::seconds{std::numeric_limits<long long>::min()}}; |
95 | std::chrono::local_seconds ls_max{ |
96 | std::chrono::seconds{std::numeric_limits<long long>::max()}}; |
97 | |
98 | // local_days aliasses |
99 | std::chrono::time_point<std::chrono::local_t, std::chrono::days> ld_tp{ |
100 | std::chrono::days{0}}; |
101 | std::chrono::time_point<std::chrono::local_t, |
102 | std::chrono::duration<int, std::ratio<86400>>> |
103 | ld_tp_d_r{std::chrono::days{0}}; |
104 | std::chrono::time_point<std::chrono::local_t, |
105 | std::chrono::duration<int, std::ratio<86400, 1>>> |
106 | ld_tp_d_r2{std::chrono::days{0}}; |
107 | |
108 | // local_days |
109 | std::chrono::local_days ld_0{std::chrono::days{0}}; |
110 | |
111 | std::chrono::local_days ld_neg_date{std::chrono::days{-12'687'428}}; |
112 | std::chrono::local_days ld_neg_days{std::chrono::days{-12'687'429}}; |
113 | |
114 | std::chrono::local_days ld_pos_date{std::chrono::days{11'248'737}}; |
115 | std::chrono::local_days ld_pos_days{std::chrono::days{11'248'738}}; |
116 | |
117 | std::chrono::local_days ld_min{ |
118 | std::chrono::days{std::numeric_limits<int>::min()}}; |
119 | std::chrono::local_days ld_max{ |
120 | std::chrono::days{std::numeric_limits<int>::max()}}; |
121 | |
122 | std::chrono::day d_0{0}; |
123 | std::chrono::day d_1{1}; |
124 | std::chrono::day d_31{31}; |
125 | std::chrono::day d_255{255}; |
126 | |
127 | std::chrono::month jan = std::chrono::January; |
128 | std::chrono::month feb = std::chrono::February; |
129 | std::chrono::month mar = std::chrono::March; |
130 | std::chrono::month apr = std::chrono::April; |
131 | std::chrono::month may = std::chrono::May; |
132 | std::chrono::month jun = std::chrono::June; |
133 | std::chrono::month jul = std::chrono::July; |
134 | std::chrono::month aug = std::chrono::August; |
135 | std::chrono::month sep = std::chrono::September; |
136 | std::chrono::month oct = std::chrono::October; |
137 | std::chrono::month nov = std::chrono::November; |
138 | std::chrono::month dec = std::chrono::December; |
139 | |
140 | std::chrono::month month_0{0}; |
141 | std::chrono::month month_1{1}; |
142 | std::chrono::month month_2{2}; |
143 | std::chrono::month month_3{3}; |
144 | std::chrono::month month_4{4}; |
145 | std::chrono::month month_5{5}; |
146 | std::chrono::month month_6{6}; |
147 | std::chrono::month month_7{7}; |
148 | std::chrono::month month_8{8}; |
149 | std::chrono::month month_9{9}; |
150 | std::chrono::month month_10{10}; |
151 | std::chrono::month month_11{11}; |
152 | std::chrono::month month_12{12}; |
153 | std::chrono::month month_13{13}; |
154 | std::chrono::month month_255{255}; |
155 | |
156 | std::chrono::year y_min{std::chrono::year::min()}; |
157 | std::chrono::year y_0{0}; |
158 | std::chrono::year y_1970{1970}; |
159 | std::chrono::year y_2038{2038}; |
160 | std::chrono::year y_max{std::chrono::year::max()}; |
161 | |
162 | std::chrono::weekday sun = std::chrono::Sunday; |
163 | std::chrono::weekday mon = std::chrono::Monday; |
164 | std::chrono::weekday tue = std::chrono::Tuesday; |
165 | std::chrono::weekday wed = std::chrono::Wednesday; |
166 | std::chrono::weekday thu = std::chrono::Thursday; |
167 | std::chrono::weekday fri = std::chrono::Friday; |
168 | std::chrono::weekday sat = std::chrono::Saturday; |
169 | |
170 | std::chrono::weekday weekday_0{0}; |
171 | std::chrono::weekday weekday_1{1}; |
172 | std::chrono::weekday weekday_2{2}; |
173 | std::chrono::weekday weekday_3{3}; |
174 | std::chrono::weekday weekday_4{4}; |
175 | std::chrono::weekday weekday_5{5}; |
176 | std::chrono::weekday weekday_6{6}; |
177 | std::chrono::weekday weekday_7{7}; |
178 | std::chrono::weekday weekday_8{8}; |
179 | std::chrono::weekday weekday_255{255}; |
180 | |
181 | std::chrono::weekday_indexed wdi_saturday_0{std::chrono::Saturday, 0}; |
182 | std::chrono::weekday_indexed wdi_monday_1{std::chrono::Monday, 1}; |
183 | std::chrono::weekday_indexed wdi_invalid{std::chrono::weekday{255}, 255}; |
184 | |
185 | std::chrono::weekday_last wdl_monday{std::chrono::Monday}; |
186 | std::chrono::weekday_last wdl_invalid{std::chrono::weekday{255}}; |
187 | |
188 | std::chrono::month_day md_new_years_eve{std::chrono::December / 31}; |
189 | std::chrono::month_day md_new_year{std::chrono::January / 1}; |
190 | std::chrono::month_day md_invalid{std::chrono::month{255} / 255}; |
191 | |
192 | std::chrono::month_day_last mdl_jan{std::chrono::January}; |
193 | std::chrono::month_day_last mdl_new_years_eve{std::chrono::December}; |
194 | |
195 | std::chrono::month_weekday mwd_first_thursday{ |
196 | std::chrono::January, |
197 | std::chrono::weekday_indexed{std::chrono::Thursday, 1}}; |
198 | |
199 | std::chrono::month_weekday_last mwdl_last_saturday{ |
200 | std::chrono::December, std::chrono::weekday_last{std::chrono::Saturday}}; |
201 | |
202 | std::chrono::year_month ym_year_zero{std::chrono::year{0}, |
203 | std::chrono::January}; |
204 | |
205 | std::chrono::year_month_day ymd_bc{std::chrono::year{-1}, std::chrono::March, |
206 | std::chrono::day{255}}; |
207 | std::chrono::year_month_day ymd_year_zero{ |
208 | std::chrono::year{0}, std::chrono::month{255}, std::chrono::day{25}}; |
209 | std::chrono::year_month_day ymd_unix_epoch{ |
210 | std::chrono::year{1970}, std::chrono::January, std::chrono::day{1}}; |
211 | |
212 | std::chrono::year_month_day_last ymdl_bc{ |
213 | std::chrono::year{-1}, |
214 | std::chrono::month_day_last{std::chrono::December}}; |
215 | std::chrono::year_month_day_last ymdl_may_1970{ |
216 | std::chrono::year{1970}, std::chrono::month_day_last{std::chrono::May}}; |
217 | |
218 | std::chrono::year_month_weekday ymwd_bc{ |
219 | std::chrono::year{-1}, std::chrono::June, |
220 | std::chrono::weekday_indexed{std::chrono::Wednesday, 2}}; |
221 | std::chrono::year_month_weekday ymwd_forth_tuesday_2024{ |
222 | std::chrono::year{2024}, std::chrono::January, |
223 | std::chrono::weekday_indexed{std::chrono::Tuesday, 4}}; |
224 | |
225 | std::chrono::year_month_weekday_last ymwdl_bc{ |
226 | std::chrono::year{-1}, std::chrono::April, |
227 | std::chrono::weekday_last{std::chrono::Friday}}; |
228 | std::chrono::year_month_weekday_last ymwdl_2024_last_tuesday_january{ |
229 | std::chrono::year{2024}, std::chrono::January, |
230 | std::chrono::weekday_last{std::chrono::Tuesday}}; |
231 | |
232 | std::cout << "break here\n" ; |
233 | } |
234 | |