Lines Matching +full:class +full:- +full:d
1 // -*- C++ -*-
2 //===----------------------------------------------------------------------===//
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8 //===----------------------------------------------------------------------===//
13 // clang-format off
25 template <class ToDuration, class Rep, class Period>
30 template <class Rep> struct treat_as_floating_point : is_floating_point<Rep> {};
32 template <class Rep> inline constexpr bool treat_as_floating_point_v
35 template <class Rep>
46 template <class Rep, class Period = ratio<1>>
47 class duration
57 template <class Rep2>
67 template <class Rep2, class Period2>
68 constexpr duration(const duration<Rep2, Period2>& d,
82 constexpr common_type<duration>::type operator-() const;
85 constexpr duration& operator--(); // constexpr in C++17
86 constexpr duration operator--(int); // constexpr in C++17
88 constexpr duration& operator+=(const duration& d); // constexpr in C++17
89 constexpr duration& operator-=(const duration& d); // constexpr in C++17
110 template <class Clock, class Duration = typename Clock::duration>
111 class time_point
123 explicit time_point(const duration& d); // same as time_point() + d // constexpr in C++14
126 template <class Duration2>
135 time_point& operator+=(const duration& d); // constexpr in C++17
136 time_point& operator-=(const duration& d); // constexpr in C++17
147 template <class Rep1, class Period1, class Rep2, class Period2>
150 template <class Clock, class Duration1, class Duration2>
156 template <class Rep1, class Period1, class Rep2, class Period2>
160 template <class Rep1, class Period1, class Rep2, class Period2>
163 operator-(const duration<Rep1, Period1>& lhs, const duration<Rep2, Period2>& rhs);
164 template <class Rep1, class Period, class Rep2>
167 operator*(const duration<Rep1, Period>& d, const Rep2& s);
168 template <class Rep1, class Period, class Rep2>
171 operator*(const Rep1& s, const duration<Rep2, Period>& d);
172 template <class Rep1, class Period, class Rep2>
175 operator/(const duration<Rep1, Period>& d, const Rep2& s);
176 template <class Rep1, class Period1, class Rep2, class Period2>
182 template <class Rep1, class Period1, class Rep2, class Period2>
185 template <class Rep1, class Period1, class Rep2, class Period2>
188 template <class Rep1, class Period1, class Rep2, class Period2>
191 template <class Rep1, class Period1, class Rep2, class Period2>
194 template <class Rep1, class Period1, class Rep2, class Period2>
197 template <class Rep1, class Period1, class Rep2, class Period2>
200 template<class Rep1, class Period1, class Rep2, class Period2>
206 template <class ToDuration, class Rep, class Period>
207 ToDuration duration_cast(const duration<Rep, Period>& d);
209 template <class ToDuration, class Rep, class Period>
210 constexpr ToDuration floor(const duration<Rep, Period>& d); // C++17
211 template <class ToDuration, class Rep, class Period>
212 constexpr ToDuration ceil(const duration<Rep, Period>& d); // C++17
213 template <class ToDuration, class Rep, class Period>
214 constexpr ToDuration round(const duration<Rep, Period>& d); // C++17
217 template<class charT, class traits, class Rep, class Period> // C++20
220 const duration<Rep, Period>& d);
223 template <class Clock, class Duration1, class Rep2, class Period2>
226 template <class Rep1, class Period1, class Clock, class Duration2>
229 template <class Clock, class Duration1, class Rep2, class Period2>
231 operator-(const time_point<Clock, Duration1>& lhs, const duration<Rep2, Period2>& rhs);
232 template <class Clock, class Duration1, class Duration2>
234 operator-(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
237 template <class Clock, class Duration1, class Duration2>
239 template <class Clock, class Duration1, class Duration2>
241 template <class Clock, class Duration1, class Duration2>
243 template <class Clock, class Duration1, class Duration2>
245 template <class Clock, class Duration1, class Duration2>
247 template <class Clock, class Duration1, class Duration2>
249 template<class Clock, class Duration1,
256 template <class ToDuration, class Clock, class Duration>
259 template <class ToDuration, class Clock, class Duration>
263 template <class ToDuration, class Clock, class Duration>
267 template <class ToDuration, class Clock, class Duration>
271 template <class Rep, class Period>
272 constexpr duration<Rep, Period> abs(duration<Rep, Period> d); // C++17
276 class system_clock
290 template <class Duration>
295 template<class charT, class traits, class Duration> // C++20
299 template<class charT, class traits> // C++20
303 class file_clock // C++20
306 typedef see-below rep;
314 template<class Duration>
315 static sys_time<see-below> to_sys(const file_time<Duration>&);
317 template<class Duration>
318 static file_time<see-below> from_sys(const sys_time<Duration>&);
321 template<class Duration>
324 template<class charT, class traits, class Duration> // C++20
328 class steady_clock
344 template<class Duration>
349 template<class charT, class traits, class Duration> // C++20
353 // 25.8.2, class last_spec // C++20
356 // 25.8.3, class day // C++20
358 class day;
363 constexpr day operator-(const day& x, const days& y) noexcept;
364 constexpr days operator-(const day& x, const day& y) noexcept;
365 template<class charT, class traits>
367 operator<<(basic_ostream<charT, traits>& os, const day& d);
369 // 25.8.4, class month // C++20
370 class month;
376 constexpr month operator-(const month& x, const months& y) noexcept;
377 constexpr months operator-(const month& x, const month& y) noexcept;
378 template<class charT, class traits>
382 // 25.8.5, class year // C++20
383 class year;
389 constexpr year operator-(const year& x, const years& y) noexcept;
390 constexpr years operator-(const year& x, const year& y) noexcept;
391 template<class charT, class traits>
395 // 25.8.6, class weekday // C++20
396 class weekday;
401 constexpr weekday operator-(const weekday& x, const days& y) noexcept;
402 constexpr days operator-(const weekday& x, const weekday& y) noexcept;
403 template<class charT, class traits>
407 // 25.8.7, class weekday_indexed // C++20
409 class weekday_indexed;
412 template<class charT, class traits>
416 // 25.8.8, class weekday_last // C++20
417 class weekday_last;
421 template<class charT, class traits>
425 // 25.8.9, class month_day // C++20
426 class month_day;
431 template<class charT, class traits>
435 // 25.8.10, class month_day_last // C++20
436 class month_day_last;
441 template<class charT, class traits>
445 // 25.8.11, class month_weekday // C++20
446 class month_weekday;
450 template<class charT, class traits>
454 // 25.8.12, class month_weekday_last // C++20
455 class month_weekday_last;
459 template<class charT, class traits>
464 // 25.8.13, class year_month // C++20
465 class year_month;
472 constexpr year_month operator-(const year_month& ym, const months& dm) noexcept;
473 constexpr months operator-(const year_month& x, const year_month& y) noexcept;
476 constexpr year_month operator-(const year_month& ym, const years& dy) noexcept;
478 template<class charT, class traits>
482 // 25.8.14, class year_month_day class // C++20
492 constexpr year_month_day operator-(const year_month_day& ymd, const months& dm) noexcept;
493 constexpr year_month_day operator-(const year_month_day& ymd, const years& dy) noexcept;
495 template<class charT, class traits>
499 // 25.8.15, class year_month_day_last // C++20
500 class year_month_day_last;
514 operator-(const year_month_day_last& ymdl, const months& dm) noexcept;
516 operator-(const year_month_day_last& ymdl, const years& dy) noexcept;
518 template<class charT, class traits>
522 // 25.8.16, class year_month_weekday // C++20
523 class year_month_weekday;
537 operator-(const year_month_weekday& ymwd, const months& dm) noexcept;
539 operator-(const year_month_weekday& ymwd, const years& dy) noexcept;
541 template<class charT, class traits>
545 // 25.8.17, class year_month_weekday_last // C++20
546 class year_month_weekday_last;
559 operator-(const year_month_weekday_last& ymwdl, const months& dm) noexcept;
561 operator-(const year_month_weekday_last& ymwdl, const years& dy) noexcept;
563 template<class charT, class traits>
573 operator/(const month& m, const day& d) noexcept;
575 operator/(const month& m, int d) noexcept;
577 operator/(int m, const day& d) noexcept;
579 operator/(const day& d, const month& m) noexcept;
581 operator/(const day& d, int m) noexcept;
607 operator/(const year_month& ym, const day& d) noexcept;
609 operator/(const year_month& ym, int d) noexcept;
649 // 26.9, class template hh_mm_ss
650 template <class Duration>
651 class hh_mm_ss
664 constexpr explicit hh_mm_ss(Duration d) noexcept;
676 template<class charT, class traits, class Duration>
697 class tzdb_list { // C++20
704 class const_iterator;
728 class nonexistent_local_time; // C++20
729 class ambiguous_local_time; // C++20
740 template<class charT, class traits> // C++20
754 template<class charT, class traits> // C++20
758 // 25.10.5, class time_zone // C++20
759 enum class choose {earliest, latest};
760 class time_zone {
768 template<class Duration>
771 template<class Duration>
774 template<class Duration>
778 template<class Duration>
782 template<class Duration>
789 // [time.zone.zonedtraits], class template zoned_traits
790 template<class T> struct zoned_traits; // C++20
792 // [time.zone.zonedtime], class template zoned_time
793 template<class Duration, class TimeZonePtr = const time_zone*> // C++20
794 class zoned_time;
798 template<class Duration1, class Duration2, class TimeZonePtr> // C++20
802 template<class charT, class traits, class Duration, class TimeZonePtr> // C++20
808 class leap_second { // C++20
822 template<class Duration> // C++20
824 template<class Duration> // C++20
826 template<class Duration> // C++20
828 template<class Duration> // C++20
830 template<class Duration> // C++20
832 template<class Duration> // C++20
834 template<class Duration> // C++20
836 template<class Duration> // C++20
838 template<class Duration> // C++20
840 template<class Duration> // C++20
844 // [time.zone.link], class time_zone_link
845 class time_zone_link { // C++20
862 template<class Duration, class charT>
864 template<class Duration, class charT>
866 template<class Duration, class charT>
868 template<class Rep, class Period, class charT>
870 template<class charT> struct formatter<chrono::day, charT>; // C++20
871 template<class charT> struct formatter<chrono::month, charT>; // C++20
872 template<class charT> struct formatter<chrono::year, charT>; // C++20
873 template<class charT> struct formatter<chrono::weekday, charT>; // C++20
874 template<class charT> struct formatter<chrono::weekday_indexed, charT>; // C++20
875 template<class charT> struct formatter<chrono::weekday_last, charT>; // C++20
876 template<class charT> struct formatter<chrono::month_day, charT>; // C++20
877 template<class charT> struct formatter<chrono::month_day_last, charT>; // C++20
878 template<class charT> struct formatter<chrono::month_weekday, charT>; // C++20
879 template<class charT> struct formatter<chrono::month_weekday_last, charT>; // C++20
880 template<class charT> struct formatter<chrono::year_month, charT>; // C++20
881 template<class charT> struct formatter<chrono::year_month_day, charT>; // C++20
882 template<class charT> struct formatter<chrono::year_month_day_last, charT>; // C++20
883 template<class charT> struct formatter<chrono::year_month_weekday, charT>; // C++20
884 template<class charT> struct formatter<chrono::year_month_weekday_last, charT>; // C++20
885 template<class Rep, class Period, class charT>
887 template<class charT> struct formatter<chrono::sys_info, charT>; // C++20
888 template<class charT> struct formatter<chrono::local_info, charT>; // C++20
889 template<class Duration, class TimeZonePtr, class charT> // C++20
932 constexpr chrono::day operator ""d(unsigned long long d) noexcept; // C++20
940 // clang-format on
989 // standard-mandated includes