Provided by: libstdc++-5-doc_5.4.0-6ubuntu1~16.04.12_all bug

NAME

       std::basic_istream< _CharT, _Traits >::sentry -

SYNOPSIS

   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

   Public Member Functions
       sentry (basic_istream< _CharT, _Traits > &__is, bool __noskipws=false)
       operator bool () const

Detailed Description

   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.

Member Typedef Documentation

   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.

Constructor & Destructor Documentation

   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::ios_base::badbit, std::ios_base::eofbit, std::ios_base::failbit,
       std::ios_base::flags(), std::num_get< _CharT, _InIter >::get(), std::basic_ios< _CharT,
       _Traits >::good(), std::ios_base::goodbit, std::__ctype_abstract_base< _CharT >::is(),
       std::basic_istream< _CharT, _Traits >::operator>>(), std::basic_ios< _CharT, _Traits
       >::rdbuf(), std::basic_ios< _CharT, _Traits >::setstate(), std::basic_streambuf< _CharT,
       _Traits >::sgetc(), std::ios_base::skipws, std::basic_streambuf< _CharT, _Traits
       >::snextc(), and std::basic_ios< _CharT, _Traits >::tie().

Member Function Documentation

   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.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++                                 Fri std::basic_istream< _CharT, _Traits >::sentry(3cxx)