Scroll to navigation

std::chrono::operator<<(std::chrono::year_month_day)(3) C++ Standard Libary std::chrono::operator<<(std::chrono::year_month_day)(3)

NAME

std::chrono::operator<<(std::chrono::year_month_day) - std::chrono::operator<<(std::chrono::year_month_day)

Synopsis


Defined in header <chrono>
template< class CharT, class Traits >


std::basic_ostream<CharT, Traits>& (since C++20)
operator<<( std::basic_ostream<CharT, Traits>& os,


const std::chrono::year_month_day& ymd );


Outputs a textual representation of ymd into the stream os. This first forms a
std::basic_string<CharT> s consisting of a textual representation of the date in the
format yyyy-mm-dd (same as the one output by formatter with the %F specifier). Then,
if !ymd.ok(), appends " is not a valid date" to s. Inserts s into os.


Equivalent to


return os << (ymd.ok() ?
std::format(os.getloc(), STATICALLY_WIDEN<CharT>("{:%F}"), ymd) :
std::format(os.getloc(), STATICALLY_WIDEN<CharT>("{:%F} is not a valid date"),
ymd));


where STATICALLY_WIDEN<CharT>("...") is "..." if CharT is char, and L"..." if CharT
is wchar_t.

Return value


os.

See also


format stores formatted representation of the
(C++20) arguments in a new string
(function template)
specialization of std::formatter that
std::formatter<std::chrono::year_month_day> formats a year_month_day according to
(C++20) the provided format
(class template specialization)

2022.07.31 http://cppreference.com