29
Time library
[time]
29.8
The civil calendar
[time.cal]
29.8.15
Class
year_
month_
day_
last
[time.cal.ymdlast]
29.8.15.1
Overview
[time.cal.ymdlast.overview]
namespace
std
::
chrono
{
class
year_month_day_last
{
chrono
::
year y_;
//
exposition only
chrono
::
month_day_last mdl_;
//
exposition only
public
:
constexpr
year_month_day_last
(
const
chrono
::
year
&
y,
const
chrono
::
month_day_last
&
mdl
)
noexcept
;
constexpr
year_month_day_last
&
operator
+
=
(
const
months
&
m
)
noexcept
;
constexpr
year_month_day_last
&
operator
-
=
(
const
months
&
m
)
noexcept
;
constexpr
year_month_day_last
&
operator
+
=
(
const
years
&
y
)
noexcept
;
constexpr
year_month_day_last
&
operator
-
=
(
const
years
&
y
)
noexcept
;
constexpr
chrono
::
year year
(
)
const
noexcept
;
constexpr
chrono
::
month month
(
)
const
noexcept
;
constexpr
chrono
::
month_day_last month_day_last
(
)
const
noexcept
;
constexpr
chrono
::
day day
(
)
const
noexcept
;
constexpr
operator
sys_days
(
)
const
noexcept
;
constexpr
explicit
operator
local_days
(
)
const
noexcept
;
constexpr
bool
ok
(
)
const
noexcept
;
}
;
}
1
#
year_
month_
day_
last
represents the last day of a specific year and month
.
year_
month_
day_
last
is a field-based time point with a resolution of
days
, except that it is restricted to pointing to the last day of a year and month
.
[
Note
1
:
year_
month_
day_
last
supports
years
- and
months
-oriented arithmetic, but not
days
-oriented arithmetic
.
For the latter, there is a conversion to
sys_
days
, which efficiently supports
days
-oriented arithmetic
.
—
end note
]
year_
month_
day_
last
meets the
Cpp17EqualityComparable
(Table
28
) and
Cpp17LessThanComparable
(Table
29
) requirements
.
2
#
year_
month_
day_
last
is a trivially copyable and standard-layout class type
.