libstdc++
|
Public Types | |
typedef _Codecvt::state_type | state_type |
typedef _Elem | char_type |
typedef _Tr | traits_type |
typedef traits_type::int_type | int_type |
typedef traits_type::pos_type | pos_type |
typedef traits_type::off_type | off_type |
typedef basic_streambuf< char_type, traits_type > | __streambuf_type |
Public Member Functions | |
wbuffer_convert () | |
wbuffer_convert (streambuf *__bytebuf, _Codecvt *__pcvt=new _Codecvt, state_type __state=state_type()) | |
wbuffer_convert (const wbuffer_convert &)=delete | |
locale | getloc () const |
streamsize | in_avail () |
wbuffer_convert & | operator= (const wbuffer_convert &)=delete |
locale | pubimbue (const locale &__loc) |
streambuf * | rdbuf () const noexcept |
streambuf * | rdbuf (streambuf *__bytebuf) noexcept |
int_type | sbumpc () |
int_type | sgetc () |
streamsize | sgetn (char_type *__s, streamsize __n) |
int_type | snextc () |
int_type | sputbackc (char_type __c) |
int_type | sputc (char_type __c) |
streamsize | sputn (const char_type *__s, streamsize __n) |
state_type | state () const noexcept |
int_type | sungetc () |
basic_streambuf * | pubsetbuf (char_type *__s, streamsize __n) |
pos_type | pubseekoff (off_type __off, ios_base::seekdir __way, ios_base::openmode __mode=ios_base::in|ios_base::out) |
pos_type | pubseekpos (pos_type __sp, ios_base::openmode __mode=ios_base::in|ios_base::out) |
int | pubsync () |
Protected Member Functions | |
void | __safe_gbump (streamsize __n) |
void | __safe_pbump (streamsize __n) |
void | gbump (int __n) |
virtual void | imbue (const locale &__loc __attribute__((__unused__))) |
_Wide_streambuf::int_type | overflow (typename _Wide_streambuf::int_type __out) |
virtual int_type | overflow (int_type __c __attribute__((__unused__))=traits_type::eof()) |
virtual int_type | pbackfail (int_type __c __attribute__((__unused__))=traits_type::eof()) |
void | pbump (int __n) |
virtual pos_type | seekoff (off_type, ios_base::seekdir, ios_base::openmode=ios_base::in|ios_base::out) |
virtual pos_type | seekpos (pos_type, ios_base::openmode=ios_base::in|ios_base::out) |
virtual basic_streambuf< char_type, _Tr > * | setbuf (char_type *, streamsize) |
void | setg (char_type *__gbeg, char_type *__gnext, char_type *__gend) |
void | setp (char_type *__pbeg, char_type *__pend) |
virtual streamsize | showmanyc () |
void | swap (basic_streambuf &__sb) |
int | sync () |
virtual int_type | uflow () |
_Wide_streambuf::int_type | underflow () |
virtual streamsize | xsgetn (char_type *__s, streamsize __n) |
streamsize | xsputn (const typename _Wide_streambuf::char_type *__s, streamsize __n) |
virtual streamsize | xsputn (const char_type *__s, streamsize __n) |
char_type * | eback () const |
char_type * | gptr () const |
char_type * | egptr () const |
char_type * | pbase () const |
char_type * | pptr () const |
char_type * | epptr () const |
Protected Attributes | |
locale | _M_buf_locale |
char_type * | _M_in_beg |
char_type * | _M_in_cur |
char_type * | _M_in_end |
char_type * | _M_out_beg |
char_type * | _M_out_cur |
char_type * | _M_out_end |
Buffer conversions.
Definition at line 387 of file locale_conv.h.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inline |
Default constructor.
Definition at line 395 of file locale_conv.h.
|
inlineexplicit |
Constructor.
__bytebuf | The underlying byte stream buffer. |
__pcvt | The facet to use for conversions. |
__state | Initial conversion state. |
Takes ownership of __pcvt
and will delete it in the destructor.
Definition at line 406 of file locale_conv.h.
References std::basic_streambuf< _Elem, _Tr >::setg(), and std::basic_streambuf< _Elem, _Tr >::setp().
|
inlineprotectedinherited |
Access to the get area.
These functions are only available to other protected functions, including derived classes.
|
inlineprotectedinherited |
Access to the get area.
These functions are only available to other protected functions, including derived classes.
Definition at line 495 of file streambuf.
Referenced by std::wbuffer_convert< _Codecvt, _Elem, _Tr >::underflow().
|
inlineprotectedinherited |
Access to the put area.
These functions are only available to other protected functions, including derived classes.
|
inlineprotectedinherited |
|
inlineinherited |
|
inlineprotectedinherited |
Access to the get area.
These functions are only available to other protected functions, including derived classes.
Definition at line 492 of file streambuf.
Referenced by std::wbuffer_convert< _Codecvt, _Elem, _Tr >::underflow().
|
inlineprotectedvirtualinherited |
Changes translations.
__loc | A new locale. |
Translations done during I/O which depend on the current locale are changed by this call. The standard adds, Between invocations of this function a class derived from streambuf can safely cache results of calls to locale functions and to members of facets so obtained.
|
inlineinherited |
|
inlineprotectedvirtualinherited |
Consumes data from the buffer; writes to the controlled sequence.
__c | An additional character to consume. |
Informally, this function is called when the output buffer is full (or does not exist, as buffering need not actually be done). If a buffer exists, it is consumed, with some effect on the controlled sequence. (Typically, the buffer is written out to the sequence verbatim.) In either case, the character c is also written out, if __c is not eof()
.
For a formal definition of this function, see a good text such as Langer & Kreft, or [27.5.2.4.5]/3-7.
A functioning output streambuf can be created by overriding only this function (no buffer area will be used).
|
inlineprotectedvirtualinherited |
Tries to back up the input sequence.
__c | The character to be inserted back into the sequence. |
gptr()
, eback()
, and pptr()
are the same as for underflow()
.
|
inlineprotectedinherited |
Access to the put area.
These functions are only available to other protected functions, including derived classes.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Access to the put area.
These functions are only available to other protected functions, including derived classes.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineprotectedvirtualinherited |
|
inlineprotectedvirtualinherited |
|
inlineprotectedvirtualinherited |
Manipulates the buffer.
Each derived class provides its own appropriate behavior. See the next-to-last paragraph of https://gcc.gnu.org/onlinedocs/libstdc++/manual/streambufs.html#io.streambuf.buffering for more on this function.
this
.
|
inlineprotectedinherited |
Setting the three read area pointers.
__gbeg | A pointer. |
__gnext | A pointer. |
__gend | A pointer. |
eback()
, __gnext == gptr()
, and __gend == egptr()
Definition at line 516 of file streambuf.
Referenced by std::wbuffer_convert< _Codecvt, _Elem, _Tr >::wbuffer_convert().
|
inlineprotectedinherited |
Setting the three write area pointers.
__pbeg | A pointer. |
__pend | A pointer. |
pbase()
, __pbeg == pptr()
, and __pend == epptr()
Definition at line 562 of file streambuf.
Referenced by std::wbuffer_convert< _Codecvt, _Elem, _Tr >::wbuffer_convert().
|
inlineinherited |
|
inlineinherited |
|
inlineprotectedvirtualinherited |
Investigating the data available.
If it returns a positive value, then successive calls to underflow()
will not return traits::eof()
until at least that number of characters have been supplied. If showmanyc()
returns -1, then calls to underflow()
or uflow()
will fail. [27.5.2.4.3]/1
eof()
but that they will return immediately. showmanyc
are es-how-many-see, not show-manic.
|
inlineinherited |
|
inlineinherited |
Pushing characters back into the input stream.
__c | The character to push back. |
Similar to sungetc(), but __c is pushed onto the stream instead of the previous character. If successful, the next character fetched from the input stream will be __c.
|
inlineinherited |
Entry point for all single-character output functions.
__c | A character to output. |
One of two public output functions.
If a write position is available for the output sequence (i.e., the buffer is not full), stores __c in that position, increments the position, and returns traits::to_int_type(__c)
. If a write position is not available, returns overflow(__c)
.
|
inlineinherited |
|
inlinenoexcept |
The conversion state following the last conversion.
Definition at line 442 of file locale_conv.h.
|
inlineinherited |
Moving backwards in the input stream.
If a putback position is available, this function decrements the input pointer and returns that character. Otherwise, calls and returns pbackfail(). The effect is to unget the last character gotten.
|
inlineprotectedvirtual |
Synchronizes the buffer arrays with the controlled sequences.
Each derived class provides its own appropriate behavior, including the definition of failure.
Reimplemented from std::basic_streambuf< _Elem, _Tr >.
Definition at line 446 of file locale_conv.h.
References std::basic_streambuf< _CharT, _Traits >::pubsync().
|
inlineprotectedvirtualinherited |
Fetches more data from the controlled sequence.
Informally, this function does the same thing as underflow()
, and in fact is required to call that function. It also returns the new character, like underflow()
does. However, this function also moves the read position forward by one.
|
inlineprotectedvirtual |
Fetches more data from the controlled sequence.
Informally, this function is called when the input buffer is exhausted (or does not exist, as buffering need not actually be done). If a buffer exists, it is refilled. In either case, the next available character is returned, or traits::eof()
to indicate a null pending sequence.
For a formal definition of the pending sequence, see a good text such as Langer & Kreft, or [27.5.2.4.3]/7-14.
A functioning input streambuf can be created by overriding only this function (no buffer area will be used). For an example, see https://gcc.gnu.org/onlinedocs/libstdc++/manual/streambufs.html
Reimplemented from std::basic_streambuf< _Elem, _Tr >.
Definition at line 460 of file locale_conv.h.
References std::basic_streambuf< _Elem, _Tr >::egptr(), and std::basic_streambuf< _Elem, _Tr >::gptr().
|
protectedvirtualinherited |
Multiple character extraction.
__s | A buffer area. |
__n | Maximum number of characters to assign. |
Fills __s[0] through __s[__n-1] with characters from the input sequence, as if by sbumpc()
. Stops when either __n characters have been copied, or when traits::eof()
would be copied.
It is expected that derived classes provide a more efficient implementation by overriding this definition.
Definition at line 46 of file streambuf.tcc.
References std::min().
|
protectedvirtualinherited |
Multiple character insertion.
__s | A buffer area. |
__n | Maximum number of characters to write. |
Writes __s[0] through __s[__n-1] to the output sequence, as if by sputc()
. Stops when either n characters have been copied, or when sputc()
would return traits::eof()
.
It is expected that derived classes provide a more efficient implementation by overriding this definition.
Definition at line 80 of file streambuf.tcc.
References std::min().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |