From 5eb10b747fdc3c10cb13f55f833c4ea96eac2684 Mon Sep 17 00:00:00 2001
From: Howard Hinnant
-This specialization is restricted to
Howard E. Hinnant
-2016-09-13
+2016-11-24
@@ -1573,7 +1573,7 @@ and predictable.
date
constexpr year_month_weekday_last operator/(const month_weekday_last& mwdl, int y) noexcept;
-
+time_of_day
factory functions time_of_day
factory function
-
template <class Rep, class Period>
@@ -1582,38 +1582,6 @@ time_of_day<std::chrono::duration<Rep, Period>>
make_time(std::chrono::duration<Rep, Period> d) noexcept;
-
-
-
-constexpr
-time_of_day<std::chrono::hours>
-make_time(std::chrono::hours h, unsigned md) noexcept;
-
-
-
-
-constexpr
-time_of_day<std::chrono::minutes>
-make_time(std::chrono::hours h, std::chrono::minutes m, unsigned md) noexcept;
-
-
-
-
-constexpr
-time_of_day<std::chrono::seconds>
-make_time(std::chrono::hours h, std::chrono::minutes m, std::chrono::seconds s,
- unsigned md) noexcept;
-
-
-
-template <class Rep, class Period,
- class = std::enable_if_t<std::ratio_less<Period, std::ratio<1>>::value>>
-constexpr
-time_of_day<std::chrono::duration<Rep, Period>>
-make_time(std::chrono::hours h, std::chrono::minutes m, std::chrono::seconds s,
- std::chrono::duration<Rep, Period> sub_s, unsigned md) noexcept
-
@@ -6332,8 +6300,8 @@ This specialization handles hours:minutes:seconds since midnight.
time_of_day<std::chrono::duration<Rep, Period>>
convenience
streaming operators
@@ -6359,7 +6327,6 @@ public:
using precision = std::chrono::hours;
constexpr explicit time_of_day(std::chrono::hours since_midnight) noexcept;
- constexpr time_of_day(std::chrono::hours h, unsigned md) noexcept;
constexpr std::chrono::hours hours() const noexcept;
constexpr unsigned mode() const noexcept;
@@ -6387,24 +6354,6 @@ corresponding to Period
s that are shorter than 1
-second. Typical uses are with milliseconds, microseconds and nanoseconds. This
+This specialization is restricted to Period
s that fractions of a second
+to represent. Typical uses are with milliseconds, microseconds and nanoseconds. This
specialization handles hours:minute:seconds.fractional_seconds since midnight.
since_midnight
hours after 00:00:00.
-constexpr time_of_day<std::chrono::hours>::time_of_day(std::chrono::hours h, unsigned md) noexcept; -- -
---Preconditions:
-md == am
ormd == pm
. --Effects: Constructs an object of type
-time_of_day
in 12-hour format -corresponding toh
hours after 00:00:00. --Postconditions:
-hours()
returnsh
, andmode()
-returnsmd
. -
constexpr std::chrono::hours time_of_day<std::chrono::hours>::hours() const noexcept;@@ -6505,8 +6454,6 @@ public: using precision = std::chrono::minutes; constexpr explicit time_of_day(std::chrono::minutes since_midnight) noexcept; - constexpr time_of_day(std::chrono::hours h, std::chrono::minutes m, - unsigned md) noexcept; constexpr std::chrono::hours hours() const noexcept; constexpr std::chrono::minutes minutes() const noexcept; @@ -6537,25 +6484,6 @@ integral number of minutes
since_midnight
is after (00:00:00 +
--constexpr time_of_day<std::chrono::minutes>::time_of_day(std::chrono::hours h, std::chrono::minutes m, - unsigned md) noexcept; -- -
---Preconditions:
-md == am
ormd == pm
. --Effects: Constructs an object of type
-time_of_day
in 12-hour format -corresponding toh
hours andm
minutes after 00:00:00. --Postconditions:
-hours()
returnsh
,minutes()
-returnsm
, andmode()
returnsmd
. -
constexpr std::chrono::hours time_of_day<std::chrono::minutes>::hours() const noexcept;@@ -6666,8 +6594,6 @@ public: using precision = std::chrono::seconds; constexpr explicit time_of_day(std::chrono::seconds since_midnight) noexcept; - constexpr time_of_day(std::chrono::hours h, std::chrono::minutes m, - std::chrono::seconds s, unsigned md) noexcept; constexpr std::chrono::hours hours() const noexcept; constexpr std::chrono::minutes minutes() const noexcept; @@ -6701,27 +6627,6 @@ integral number of minutes
since_midnight
is after (00:00:00 +
--constexpr time_of_day<std::chrono::seconds>::time_of_day(std::chrono::hours h, std::chrono::minutes m, - std::chrono::seconds s, unsigned md) noexcept; -- -
---Preconditions:
-md == am
ormd == pm
. --Effects: Constructs an object of type
-time_of_day
in 12-hour format -corresponding toh
hours,m
minutes, ands
seconds -after 00:00:00. --Postconditions:
-hours()
returnsh
.minutes()
-returnsm
.seconds()
returnss
. -mode()
returnsmd
. -
constexpr std::chrono::hours time_of_day<std::chrono::seconds>::hours() const noexcept;@@ -6839,11 +6744,9 @@ that no leading zero is output for hours less than 10. time_of_day<std::chrono::duration<Rep, Period>> { public: - using precision = std::chrono::duration<Rep, Period>; + using precision = The decimal-based duration used to format - constexpr explicit time_of_day(precision since_midnight) noexcept; - constexpr time_of_day(std::chrono::hours h, std::chrono::minutes m, - std::chrono::seconds s, precision sub_s, unsigned md) noexcept; + constexpr explicit time_of_day(std::chrono::duration<Rep, Period> since_midnight) noexcept; constexpr std::chrono::hours hours() const noexcept; constexpr std::chrono::minutes minutes() const noexcept; @@ -6864,7 +6767,8 @@ This specialization shall not exist unless
Period < 1s
.
-constexpr explicit time_of_day<std::chrono::duration<Rep, Period>>::time_of_day(precision since_midnight) noexcept; +constexpr explicit +time_of_day<std::chrono::duration<Rep, Period>>::time_of_day(std::chrono::duration<Rep, Period> since_midnight) noexcept;
@@ -6885,29 +6789,6 @@ returns 0
.
--constexpr time_of_day<std::chrono::duration<Rep, Period>>::time_of_day(std::chrono::hours h, std::chrono::minutes m, - std::chrono::seconds s, precision sub_s, - unsigned md) noexcept; -- -
---Preconditions:
-md == am
ormd == pm
. --Effects: Constructs an object of type
-time_of_day
in 12-hour format -corresponding toh
hours,m
minutes, ands + sub_s
-seconds after 00:00:00. --Postconditions:
-hours()
returnsh
.minutes()
-returnsm
.seconds()
returnss
. -subseconds()
returnssub_s
.mode()
returns -md
. -
constexpr std::chrono::hours time_of_day<std::chrono::duration<Rep, Period>>::hours() const noexcept;@@ -7053,58 +6934,6 @@ make_time(std::chrono::duration<Rep, Period> d) noexcept; -
-constexpr -time_of_day<std::chrono::hours> -make_time(std::chrono::hours h, unsigned md) noexcept; -- -
-- --Returns:
-time_of_day<std::chrono::hours>(h, md)
. -
-constexpr -time_of_day<std::chrono::minutes> -make_time(std::chrono::hours h, std::chrono::minutes m, unsigned md) noexcept; -- -
-- --Returns:
-time_of_day<std::chrono::minutes>(h, m, md)
. -
-constexpr -time_of_day<std::chrono::seconds> -make_time(std::chrono::hours h, std::chrono::minutes m, std::chrono::seconds s, - unsigned md) noexcept; -- -
-- --Returns:
-time_of_day<std::chrono::seconds>(h, m, s, md)
. -
-template <class Rep, class Period, - class = std::enable_if_t<std::ratio_less<Period, std::ratio<1>>::value>> -constexpr -time_of_day<std::chrono::duration<Rep, Period>> -make_time(std::chrono::hours h, std::chrono::minutes m, std::chrono::seconds s, - std::chrono::duration<Rep, Period> sub_s, unsigned md) noexcept -- -
---Returns:
-time_of_day<std::chrono::duration<Rep, Period>>(h, m, s, sub_s, md)
. -