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. | |
Private Attributes | |
bool | _M_ok |
basic_ostream< _CharT, _Traits > & | _M_os |
Objects of this class are created before all of the standard inserters are run. It is responsible for "exception-safe prefix and suffix operations." Additional actions may be added by the implementation, and we list them in http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/howto.html#5 under [27.6] notes.
Definition at line 355 of file ostream.
std::basic_ostream< _CharT, _Traits >::sentry::sentry | ( | basic_ostream< _CharT, _Traits > & | __os | ) | [explicit] |
The constructor performs preparatory work.
os | The output stream to guard. |
is.tie()->flush()
is called to synchronize the output sequences.If the stream state is still good, then the sentry state becomes true ("okay").
Definition at line 51 of file ostream.tcc.
References std::basic_ostream< _CharT, _Traits >::sentry::_M_ok, std::ios_base::failbit, std::basic_ios< _CharT, _Traits >::good(), std::basic_ios< _CharT, _Traits >::setstate(), and std::basic_ios< _CharT, _Traits >::tie().
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.
Definition at line 383 of file ostream.
References std::ios_base::badbit, std::uncaught_exception(), and std::ios_base::unitbuf.
std::basic_ostream< _CharT, _Traits >::sentry::operator bool | ( | ) | const [inline] |
bool std::basic_ostream< _CharT, _Traits >::sentry::_M_ok [private] |
Definition at line 358 of file ostream.
Referenced by std::basic_ostream< _CharT, _Traits >::sentry::sentry().
basic_ostream<_CharT,_Traits>& std::basic_ostream< _CharT, _Traits >::sentry::_M_os [private] |