basic_istream::sentry Class Reference
Performs setup work for input streams.
More...
List of all members.
Public Types
Public Member Functions
Detailed Description
template<typename _CharT, typename _Traits>
class std::basic_istream< _CharT, _Traits >::sentry
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. 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 622 of file istream.
Member Typedef Documentation
Easy access to dependant types.
Definition at line 626 of file istream.
Constructor & Destructor Documentation
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:
- if the stream is tied to an output stream,
is.tie()->flush()
is called to synchronize the output sequence - 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 52 of file istream.tcc.
References basic_ios::_M_ctype, basic_ios::eof(), ios_base::eofbit, ios_base::failbit, ios_base::flags(), basic_ios::good(), ios_base::goodbit, __ctype_abstract_base::is(), basic_ios::rdbuf(), basic_ios::setstate(), basic_streambuf::sgetc(), ios_base::skipws, basic_streambuf::snextc(), and basic_ios::tie().
Member Function Documentation
operator bool |
( |
|
) |
const [inline] |
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 663 of file istream.
The documentation for this class was generated from the following files: