Scroll to navigation

std::chrono::weekday_indexed(3) C++ Standard Libary std::chrono::weekday_indexed(3)

NAME

std::chrono::weekday_indexed - std::chrono::weekday_indexed

Synopsis


Defined in header <chrono>
class weekday_indexed; (since C++20)


The class weekday_indexed combines a weekday, representing a day of the week in the
Gregorian calendar, with a small index n in the range [1, 5]. It represents the
first, second, third, fourth, or fifth weekday of some month.


weekday_indexed is a TriviallyCopyable StandardLayoutType.

Member functions


constructor constructs a weekday_indexed
(public member function)
weekday access the stored weekday
(public member function)
index access the stored index
(public member function)
ok checks if the weekday and index are both valid
(public member function)


Nonmember functions


operator== compares two weekday_indexed values
(C++20) (function)
operator<< outputs a weekday_indexed into a stream
(C++20) (function template)

Helper classes


specialization of std::formatter that
std::formatter<std::chrono::weekday_indexed> formats a weekday_indexed according to
(C++20) the provided format
(class template specialization)

Example

// Run this code


#include <iostream>
#include <chrono>


int main()
{
using namespace std::chrono;


constexpr weekday_indexed wi = Friday[2];


// Indexed weekday can be used at any place where chrono::day can be used:
constexpr year_month_weekday ymwd = 2021y / August / wi;
static_assert( ymwd == August / wi / 2021y and
ymwd == wi / August / 2021y );
// std::cout << ymwd << '\n';


constexpr year_month_day ymd{ymwd}; // a conversion
static_assert(ymd == 2021y / 8 / 13);
// std::cout << ymd << '\n';
}

Possible output:


2021/Aug/Fri[2]
2021-08-13

2022.07.31 http://cppreference.com