STD::BASIC_OSTREAM_SENTRY(3cxx)

πŸŽ€ NAME πŸŽ€

okay so bestie, welcome to the manual page for std::basic_ostream< _CharT, _Traits >::sentry β€” manual name 3cxx, libstdc++ territory β€” and it performs setup work for output streams. πŸ’…βœ¨

🌈 SYNOPSIS 🌈

#include <ostream>

πŸ’– Public Member Functions πŸ’–

  • sentry (basic_ostream< _CharT, _Traits > &__os) β€” the constructor performs preparatory work.
  • ~sentry () β€” possibly flushes the stream.
  • operator bool () const β€” quick status checking.

πŸ¦‹ Detailed Description πŸ¦‹

template<typename _CharT, typename _Traits>
class std::basic_ostream< _CharT, _Traits >::sentry

So this class performs setup work for output streams. Objects of this class are created before all of the standard inserters are run. It is responsible for exception-safe prefix and suffix operations. No cap, that’s the whole vibe. 🫢

πŸ’– Constructor & Destructor Documentation πŸ’–

✨ sentry constructor ✨

template<typename _CharT , typename _Traits >
std::basic_ostream< _CharT, _Traits >::sentry::sentry (basic_ostream< _CharT, _Traits > & __os) [explicit]

The constructor performs preparatory work. πŸ’…

  • __os β€” The output stream to guard.

If the stream state is good (__os.good() is true), then if the stream is tied to another output stream, is.tie()->flush() is called to synchronize the output sequences.

If the stream state is still good, then the sentry state becomes true (okay). ✨

References: std::basic_ios< _CharT, _Traits >::bad(), std::ios_base::failbit, std::basic_ios< _CharT, _Traits >::good(), std::basic_ios< _CharT, _Traits >::setstate(), and std::basic_ios< _CharT, _Traits >::tie().

πŸŽ€ ~sentry destructor πŸŽ€

template<typename _CharT , typename _Traits >
std::basic_ostream< _CharT, _Traits >::sentry::~sentry () [inline]

Possibly flushes the stream. If ios_base::unitbuf is set in os.flags(), and std::uncaught_exception() is true, the sentry destructor calls flush() on the output stream. πŸ˜­πŸ’§

References: std::ios_base::badbit, std::ios_base::flags(), std::basic_ios< _CharT, _Traits >::rdbuf(), std::basic_ios< _CharT, _Traits >::setstate(), std::uncaught_exception(), and std::ios_base::unitbuf.

✨ Member Function Documentation ✨

πŸ‘‘ operator bool πŸ‘‘

template<typename _CharT , typename _Traits >
std::basic_ostream< _CharT, _Traits >::sentry::operator bool () const [inline],  [explicit]

Quick status checking. πŸ’…

Returns: The sentry state.

For ease of use, sentries may be converted to booleans. The return value is that of the sentry state (true == okay). 🌟

πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for libstdc++ from the source code. πŸ€–πŸ’–


okay bye bestie πŸ’œ β€” this page is from libstdc++ and the 3cxx manual, auto-generated by Doxygen from the source code. The footer doesn’t print a date, so that’s the source/version-and-date tea we’ve got. 🫢✨

πŸ“¦ where this page comes from