std::basic_istream< _CharT, _Traits >::sentry − Performs setup work for input streams.
Public Types
typedef __istream_type::__ctype_type __ctype_type
typedef _Traits::int_type __int_type
typedef basic_istream< _CharT, _Traits > __istream_type
typedef basic_streambuf< _CharT, _Traits > __streambuf_type
typedef _Traits traits_type
Easy access to dependent types.
Public Member Functions
sentry (basic_istream< _CharT, _Traits > &__is, bool __noskipws=false)
The constructor performs all the work.
operator bool () const
Quick status checking.
template<typename _CharT, typename _Traits>
class std::basic_istream< _CharT, _Traits >::sentry" Performs setup work for input streams.
Objects of this class are created before all of the standard extractors are run. It is responsible for exception-safe prefix and suffix operations, although only prefix actions are currently required by the standard.
Definition at line 686 of file istream.
template<typename _CharT, typename _Traits> typedef _Traits std::basic_istream< _CharT, _Traits >::sentry::traits_type
Easy access to dependent types.
Definition at line 693 of file istream.
template<typename _CharT, typename _Traits> std::basic_istream< _CharT, _Traits >::sentry::sentry (basic_istream< _CharT, _Traits > & __is, bool __noskipws = false) [explicit]
The constructor performs all the work.
Parameters:
__is The input stream to guard.
__noskipws Whether to consume whitespace or not.
If the stream state is good (__is.good() is true), then the following actions are performed, otherwise the sentry state is false (not okay) and failbit is set in the stream state.
The sentry’s preparatory actions are:
1. |
if the stream is tied to an output stream, is.tie()->flush() is called to synchronize the output sequence |
||
2. |
if __noskipws is false, and ios_base::skipws is set in is.flags(), the sentry extracts and discards whitespace characters from the stream. The currently imbued locale is used to determine whether each character is whitespace. |
If the stream state is still good, then the sentry state becomes true (okay).
Definition at line 47 of file istream.tcc.
References std::basic_ios< _CharT, _Traits >::good(), and std::ios_base::goodbit.
Referenced by std::basic_istream< char >::get(), std::basic_istream< char >::getline(), std::basic_istream< char >::ignore(), std::basic_istream< char >::operator>>(), std::basic_istream< char >::peek(), std::basic_istream< char >::putback(), std::basic_istream< char >::read(), std::basic_istream< char >::readsome(), std::basic_istream< char >::seekg(), std::basic_istream< char >::sync(), std::basic_istream< char >::tellg(), and std::basic_istream< char >::unget().
template<typename _CharT, typename _Traits> std::basic_istream< _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).
Definition at line 734 of file istream.
Generated automatically by Doxygen for libstdc++ from the source code.