tetl 0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
year_month_weekday_last.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSL-1.0
2// SPDX-FileCopyrightText: Copyright (C) 2023 Tobias Hienzsch
3
4#ifndef TETL_CHRONO_YEAR_MONTH_WEEKDAY_LAST_HPP
5#define TETL_CHRONO_YEAR_MONTH_WEEKDAY_LAST_HPP
6
7#include <etl/_chrono/local_t.hpp>
8#include <etl/_chrono/month.hpp>
9#include <etl/_chrono/system_clock.hpp>
10#include <etl/_chrono/weekday.hpp>
11#include <etl/_chrono/weekday_last.hpp>
12#include <etl/_chrono/year.hpp>
13
14namespace etl::chrono {
15
16/// \ingroup chrono
19 chrono::year const& y,
20 chrono::month const& m,
21 chrono::weekday_last const& wdl
22 ) noexcept;
23
24 constexpr auto operator+=(months const& m) noexcept -> year_month_weekday_last&;
25 constexpr auto operator-=(months const& m) noexcept -> year_month_weekday_last&;
26 constexpr auto operator+=(years const& y) noexcept -> year_month_weekday_last&;
27 constexpr auto operator-=(years const& y) noexcept -> year_month_weekday_last&;
28
29 [[nodiscard]] constexpr auto year() const noexcept -> chrono::year;
30 [[nodiscard]] constexpr auto month() const noexcept -> chrono::month;
31 [[nodiscard]] constexpr auto weekday() const noexcept -> chrono::weekday;
32 [[nodiscard]] constexpr auto weekday_last() const noexcept -> chrono::weekday_last;
33
34 [[nodiscard]] constexpr operator sys_days() const noexcept;
35 [[nodiscard]] constexpr explicit operator local_days() const noexcept;
36 [[nodiscard]] constexpr auto ok() const noexcept -> bool;
37
38public:
42};
43
44} // namespace etl::chrono
45
46#endif // TETL_CHRONO_YEAR_MONTH_WEEKDAY_LAST_HPP
Definition abs.hpp:12
Definition adjacent_find.hpp:9
The class month represents a month in a year.
Definition month.hpp:22
Definition weekday_last.hpp:12
Definition weekday.hpp:19
Definition year_month_weekday_last.hpp:17
constexpr auto operator-=(months const &m) noexcept -> year_month_weekday_last &
constexpr auto ok() const noexcept -> bool
constexpr auto operator+=(months const &m) noexcept -> year_month_weekday_last &
constexpr auto operator+=(years const &y) noexcept -> year_month_weekday_last &
constexpr auto month() const noexcept -> chrono::month
chrono::month m
Definition year_month_weekday_last.hpp:40
constexpr auto weekday() const noexcept -> chrono::weekday
chrono::weekday_last wdl
Definition year_month_weekday_last.hpp:41
chrono::year y
Definition year_month_weekday_last.hpp:39
constexpr year_month_weekday_last(chrono::year const &y, chrono::month const &m, chrono::weekday_last const &wdl) noexcept
constexpr auto year() const noexcept -> chrono::year
constexpr auto operator-=(years const &y) noexcept -> year_month_weekday_last &
constexpr auto weekday_last() const noexcept -> chrono::weekday_last
constexpr operator sys_days() const noexcept
Definition year.hpp:14