Namespaces
Variants
Views
Actions

std::codecvt::unshift, std::codecvt::do_unshift

From cppreference.com
< cpp‎ | locale‎ | codecvt
Revision as of 20:45, 2 November 2012 by P12bot (Talk | contribs)

Template:ddcl list begin <tr class="t-dsc-header">

<td>
Defined in header <locale>
</td>

<td></td> <td></td> <tr class="t-dcl ">

<td >
public:

result unshift( stateT& state,
                externT* to,
                externT* to_end,

                externT*& to_next) const
</td>

<td > (1) </td> <td class="t-dcl-nopad"> </td> </tr> <tr class="t-dcl ">

<td >
protected:

result do_unshift( stateT& state,
                   externT* to,
                   externT* to_end,

                   externT*& to_next) const
</td>

<td > (2) </td> <td class="t-dcl-nopad"> </td> </tr> Template:ddcl list end

1) public member function, calls the member function do_unshift of the most derived class.

2) if the encoding represented by this codecvt facet is state-dependent, and state represents a conversion state that is not the initial shift state, writes the characters necessary to return to the initial shift state. The characters are written to a character array whose first element is pointed to by to. No more than to_end-to characters are written. The parameter to_next is updated to point one past the last character written.

Contents

Return value

A value of type std::codecvt_base::result, indicating the success status as follows:

ok all necessary characters were written. state now represents initial shift state
partial not enough space in the output buffer. to_next == to_end
error unspecified error occurred
noconv the encoding is not state-dependent, no termination sequence necessary

The non-converting specialization std::codecvt<char, char, std::mbstate_t> always returns std::codecvt_base::noconv

Notes

This function is called by std::basic_filebuf::close() and in other situations when finalizing a state-dependent multibyte character sequence.

Example

See also

Template:cpp/string/multibyte/dcl list wcrtombTemplate:cpp/locale/codecvt/dcl list do out