Sophie

Sophie

distrib > Mageia > 3 > i586 > by-pkgid > f5e5087a439fef5532501bf9a6ff9c34 > files > 9

libstdc++-docs-4.7.2-8.1.mga3.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3"/>
<title>libstdc++: std::__codecvt_abstract_base&lt; _InternT, _ExternT, _StateT &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">libstdc++
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00003.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
<a href="a02589.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">std::__codecvt_abstract_base&lt; _InternT, _ExternT, _StateT &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for std::__codecvt_abstract_base&lt; _InternT, _ExternT, _StateT &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="a02590.png" border="0" usemap="#std_1_1____codecvt__abstract__base_3_01___intern_t_00_01___extern_t_00_01___state_t_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="std_1_1____codecvt__abstract__base_3_01___intern_t_00_01___extern_t_00_01___state_t_01_4_inherit__map" id="std_1_1____codecvt__abstract__base_3_01___intern_t_00_01___extern_t_00_01___state_t_01_4_inherit__map">
<area shape="rect" id="node7" href="a00614.html" title="Primary class template codecvt.NB: Generic, mostly useless implementation." alt="" coords="575,11,719,50"/><area shape="rect" id="node11" href="a00003.html" title="std::__codecvt_abstract\l_base\&lt; char, char, mbstate_t \&gt;" alt="" coords="552,77,741,115"/><area shape="rect" id="node15" href="a00003.html" title="std::__codecvt_abstract\l_base\&lt; wchar_t, char,\l mbstate_t \&gt;" alt="" coords="571,139,722,191"/><area shape="rect" id="node19" href="a00003.html" title="std::__codecvt_abstract\l_base\&lt; _InternT, _ExternT,\l encoding_state \&gt;" alt="" coords="562,215,731,267"/><area shape="rect" id="node2" href="a00801.html" title="Localization functionality base class.The facet class is the base class for a localization feature..." alt="" coords="11,99,120,125"/><area shape="rect" id="node4" href="a00618.html" title="Empty base class for codecvt facet [22.2.1.5]." alt="" coords="5,149,125,174"/><area shape="rect" id="node9" href="a00619.html" title="class codecvt_byname [22.2.1.6]." alt="" coords="811,5,949,57"/><area shape="rect" id="node13" href="a00616.html" title="class codecvt&lt;char, char, mbstate_t&gt; specialization." alt="" coords="819,81,941,119"/><area shape="rect" id="node17" href="a00617.html" title="class codecvt&lt;wchar_t, char, mbstate_t&gt; specialization." alt="" coords="815,146,945,185"/><area shape="rect" id="node21" href="a00615.html" title="codecvt&lt;InternT, _ExternT, encoding_state&gt; specialization." alt="" coords="793,222,967,261"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a5a654497f2a1e139b602bf918ea803ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a654497f2a1e139b602bf918ea803ff"></a>
typedef _ExternT&#160;</td><td class="memItemRight" valign="bottom"><b>extern_type</b></td></tr>
<tr class="separator:a5a654497f2a1e139b602bf918ea803ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b8cf3925816f0c1edbb5eb0ca619a18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b8cf3925816f0c1edbb5eb0ca619a18"></a>
typedef _InternT&#160;</td><td class="memItemRight" valign="bottom"><b>intern_type</b></td></tr>
<tr class="separator:a6b8cf3925816f0c1edbb5eb0ca619a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ebf804102d2ecf297e281485b2bb54b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ebf804102d2ecf297e281485b2bb54b"></a>
typedef codecvt_base::result&#160;</td><td class="memItemRight" valign="bottom"><b>result</b></td></tr>
<tr class="separator:a9ebf804102d2ecf297e281485b2bb54b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2afa24d8302d73389b06af54ca87fea8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2afa24d8302d73389b06af54ca87fea8"></a>
typedef _StateT&#160;</td><td class="memItemRight" valign="bottom"><b>state_type</b></td></tr>
<tr class="separator:a2afa24d8302d73389b06af54ca87fea8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a410904fd95fda5af2e552ba384c98dfa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a410904fd95fda5af2e552ba384c98dfa"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>always_noconv</b> () const   throw ()</td></tr>
<tr class="separator:a410904fd95fda5af2e552ba384c98dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b35a8d6894adcd5f29f0d37a2520fa9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b35a8d6894adcd5f29f0d37a2520fa9"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>encoding</b> () const   throw ()</td></tr>
<tr class="separator:a5b35a8d6894adcd5f29f0d37a2520fa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18ef5d80a91835a38ed00754c64d414e"><td class="memItemLeft" align="right" valign="top">result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a18ef5d80a91835a38ed00754c64d414e">in</a> (state_type &amp;__state, const extern_type *__from, const extern_type *__from_end, const extern_type *&amp;__from_next, intern_type *__to, intern_type *__to_end, intern_type *&amp;__to_next) const </td></tr>
<tr class="separator:a18ef5d80a91835a38ed00754c64d414e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cbf642098347163b7a790e50e03c200"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7cbf642098347163b7a790e50e03c200"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>length</b> (state_type &amp;__state, const extern_type *__from, const extern_type *__end, size_t __max) const </td></tr>
<tr class="separator:a7cbf642098347163b7a790e50e03c200"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a234afca5cf10abc92ec0c2b4e2f4b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a234afca5cf10abc92ec0c2b4e2f4b5"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>max_length</b> () const   throw ()</td></tr>
<tr class="separator:a0a234afca5cf10abc92ec0c2b4e2f4b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5dba405c1b1ec4d38ce49ace96e844b8"><td class="memItemLeft" align="right" valign="top">result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a5dba405c1b1ec4d38ce49ace96e844b8">out</a> (state_type &amp;__state, const intern_type *__from, const intern_type *__from_end, const intern_type *&amp;__from_next, extern_type *__to, extern_type *__to_end, extern_type *&amp;__to_next) const </td></tr>
<tr class="separator:a5dba405c1b1ec4d38ce49ace96e844b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a254f4ced9556f8f1b3170a47bc632975"><td class="memItemLeft" align="right" valign="top">result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a254f4ced9556f8f1b3170a47bc632975">unshift</a> (state_type &amp;__state, extern_type *__to, extern_type *__to_end, extern_type *&amp;__to_next) const </td></tr>
<tr class="separator:a254f4ced9556f8f1b3170a47bc632975"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a8ccb8c382212026fff3553df4a727dd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ccb8c382212026fff3553df4a727dd6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>__codecvt_abstract_base</b> (size_t __refs=0)</td></tr>
<tr class="separator:a8ccb8c382212026fff3553df4a727dd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3f851fb74d2278fa226f59f1cfcc62d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3f851fb74d2278fa226f59f1cfcc62d"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><b>do_always_noconv</b> () const =0  throw ()</td></tr>
<tr class="separator:ac3f851fb74d2278fa226f59f1cfcc62d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf2ad75d9abccaa039859443b003ad00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf2ad75d9abccaa039859443b003ad00"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>do_encoding</b> () const =0  throw ()</td></tr>
<tr class="separator:adf2ad75d9abccaa039859443b003ad00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa4835b4de3912829ebd8d7b53a48d8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa4835b4de3912829ebd8d7b53a48d8e"></a>
virtual result&#160;</td><td class="memItemRight" valign="bottom"><b>do_in</b> (state_type &amp;__state, const extern_type *__from, const extern_type *__from_end, const extern_type *&amp;__from_next, intern_type *__to, intern_type *__to_end, intern_type *&amp;__to_next) const =0</td></tr>
<tr class="separator:afa4835b4de3912829ebd8d7b53a48d8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad917cf1d606d9fc2ec7d4013462cc492"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad917cf1d606d9fc2ec7d4013462cc492"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>do_length</b> (state_type &amp;, const extern_type *__from, const extern_type *__end, size_t __max) const =0</td></tr>
<tr class="separator:ad917cf1d606d9fc2ec7d4013462cc492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41c98c5e43d35eda9b74f8269e05fbf0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41c98c5e43d35eda9b74f8269e05fbf0"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><b>do_max_length</b> () const =0  throw ()</td></tr>
<tr class="separator:a41c98c5e43d35eda9b74f8269e05fbf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa969d1e16dd100e737c5d777aa0cdf02"><td class="memItemLeft" align="right" valign="top">virtual result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#aa969d1e16dd100e737c5d777aa0cdf02">do_out</a> (state_type &amp;__state, const intern_type *__from, const intern_type *__from_end, const intern_type *&amp;__from_next, extern_type *__to, extern_type *__to_end, extern_type *&amp;__to_next) const =0</td></tr>
<tr class="separator:aa969d1e16dd100e737c5d777aa0cdf02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a901dbb2d3fd018528d54eaa6c3216135"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a901dbb2d3fd018528d54eaa6c3216135"></a>
virtual result&#160;</td><td class="memItemRight" valign="bottom"><b>do_unshift</b> (state_type &amp;__state, extern_type *__to, extern_type *__to_end, extern_type *&amp;__to_next) const =0</td></tr>
<tr class="separator:a901dbb2d3fd018528d54eaa6c3216135"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
Static Protected Member Functions</h2></td></tr>
<tr class="memitem:aaaa39cc3ae39c5283101ce8c9c630902"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaaa39cc3ae39c5283101ce8c9c630902"></a>
static __c_locale&#160;</td><td class="memItemRight" valign="bottom"><b>_S_clone_c_locale</b> (__c_locale &amp;__cloc)  throw ()</td></tr>
<tr class="separator:aaaa39cc3ae39c5283101ce8c9c630902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60fbe742b113ff90f63e01c0ac658826"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60fbe742b113ff90f63e01c0ac658826"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>_S_create_c_locale</b> (__c_locale &amp;__cloc, const char *__s, __c_locale __old=0)</td></tr>
<tr class="separator:a60fbe742b113ff90f63e01c0ac658826"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a8c1c763d0d99421ab859f9c11668af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a8c1c763d0d99421ab859f9c11668af"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>_S_destroy_c_locale</b> (__c_locale &amp;__cloc)</td></tr>
<tr class="separator:a0a8c1c763d0d99421ab859f9c11668af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e71ffc16033618e86c8c9d14ae4b022"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e71ffc16033618e86c8c9d14ae4b022"></a>
static __c_locale&#160;</td><td class="memItemRight" valign="bottom"><b>_S_get_c_locale</b> ()</td></tr>
<tr class="separator:a2e71ffc16033618e86c8c9d14ae4b022"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acda690006956a82c0cc436f5509c4f26"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acda690006956a82c0cc436f5509c4f26"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><b>_S_get_c_name</b> ()  throw ()</td></tr>
<tr class="separator:acda690006956a82c0cc436f5509c4f26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a426725452f3ac010eb3c090e83a6e574"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a426725452f3ac010eb3c090e83a6e574"></a>
static __c_locale&#160;</td><td class="memItemRight" valign="bottom"><b>_S_lc_ctype_c_locale</b> (__c_locale __cloc, const char *__s)</td></tr>
<tr class="separator:a426725452f3ac010eb3c090e83a6e574"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename _InternT, typename _ExternT, typename _StateT&gt;<br/>
class std::__codecvt_abstract_base&lt; _InternT, _ExternT, _StateT &gt;</h3>

<p>Common base for codecvt functions. </p>
<p>This template class provides implementations of the public functions that forward to the protected virtual functions.</p>
<p>This template also provides abstract stubs for the protected virtual functions. </p>

<p>Definition at line <a class="el" href="a01044_source.html#l00069">69</a> of file <a class="el" href="a01044_source.html">codecvt.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aa969d1e16dd100e737c5d777aa0cdf02"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _InternT, typename _ExternT, typename _StateT&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual result <a class="el" href="a00003.html">std::__codecvt_abstract_base</a>&lt; _InternT, _ExternT, _StateT &gt;::do_out </td>
          <td>(</td>
          <td class="paramtype">state_type &amp;&#160;</td>
          <td class="paramname"><em>__state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&#160;</td>
          <td class="paramname"><em>__from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&#160;</td>
          <td class="paramname"><em>__from_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&amp;&#160;</td>
          <td class="paramname"><em>__from_next</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&amp;&#160;</td>
          <td class="paramname"><em>__to_next</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert from internal to external character set. </p>
<p>Converts input string of intern_type to output string of extern_type. This function is a hook for derived classes to change the value returned.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00003.html#a5dba405c1b1ec4d38ce49ace96e844b8" title="Convert from internal to external character set.">out</a> for more information. </dd></dl>

<p>Implemented in <a class="el" href="a00617.html#ac654130b713e1aa08030744f7174ca9a">std::codecvt&lt; wchar_t, char, mbstate_t &gt;</a>, <a class="el" href="a00616.html#a2ef13d8af2289592cc87031895e04ca1">std::codecvt&lt; char, char, mbstate_t &gt;</a>, <a class="el" href="a00614.html#a7a5c720e37027b56e41f10b8e9313821">std::codecvt&lt; _InternT, _ExternT, _StateT &gt;</a>, and <a class="el" href="a00615.html#adf9d866083c98b86e7665ac6ddd06c5b">std::codecvt&lt; _InternT, _ExternT, encoding_state &gt;</a>.</p>

<p>Referenced by <a class="el" href="a01044_source.html#l00117">std::__codecvt_abstract_base&lt; _InternT, _ExternT, encoding_state &gt;::out()</a>.</p>

</div>
</div>
<a class="anchor" id="a18ef5d80a91835a38ed00754c64d414e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _InternT, typename _ExternT, typename _StateT&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">result <a class="el" href="a00003.html">std::__codecvt_abstract_base</a>&lt; _InternT, _ExternT, _StateT &gt;::in </td>
          <td>(</td>
          <td class="paramtype">state_type &amp;&#160;</td>
          <td class="paramname"><em>__state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const extern_type *&#160;</td>
          <td class="paramname"><em>__from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const extern_type *&#160;</td>
          <td class="paramname"><em>__from_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const extern_type *&amp;&#160;</td>
          <td class="paramname"><em>__from_next</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">intern_type *&#160;</td>
          <td class="paramname"><em>__to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">intern_type *&#160;</td>
          <td class="paramname"><em>__to_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">intern_type *&amp;&#160;</td>
          <td class="paramname"><em>__to_next</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert from external to internal character set. </p>
<p>Converts input string of extern_type to output string of intern_type. This is analogous to mbsrtowcs. It does this by calling codecvt::do_in.</p>
<p>The source and destination character sets are determined by the facet's locale, internal and external types.</p>
<p>The characters in [from,from_end) are converted and written to [to,to_end). from_next and to_next are set to point to the character following the last successfully converted character, respectively. If the result needed no conversion, from_next and to_next are not affected.</p>
<p>The <em>state</em> argument should be initialized if the input is at the beginning and carried from a previous call if continuing conversion. There are no guarantees about how <em>state</em> is used.</p>
<p>The result returned is a member of codecvt_base::result. If all the input is converted, returns codecvt_base::ok. If no conversion is necessary, returns codecvt_base::noconv. If the input ends early or there is insufficient space in the output, returns codecvt_base::partial. Otherwise the conversion failed and codecvt_base::error is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">__state</td><td>Persistent conversion state data. </td></tr>
    <tr><td class="paramname">__from</td><td>Start of input. </td></tr>
    <tr><td class="paramname">__from_end</td><td>End of input. </td></tr>
    <tr><td class="paramname">__from_next</td><td>Returns start of unconverted data. </td></tr>
    <tr><td class="paramname">__to</td><td>Start of output buffer. </td></tr>
    <tr><td class="paramname">__to_end</td><td>End of output buffer. </td></tr>
    <tr><td class="paramname">__to_next</td><td>Returns start of unused output area. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>codecvt_base::result. </dd></dl>

<p>Definition at line <a class="el" href="a01044_source.html#l00197">197</a> of file <a class="el" href="a01044_source.html">codecvt.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5dba405c1b1ec4d38ce49ace96e844b8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _InternT, typename _ExternT, typename _StateT&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">result <a class="el" href="a00003.html">std::__codecvt_abstract_base</a>&lt; _InternT, _ExternT, _StateT &gt;::out </td>
          <td>(</td>
          <td class="paramtype">state_type &amp;&#160;</td>
          <td class="paramname"><em>__state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&#160;</td>
          <td class="paramname"><em>__from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&#160;</td>
          <td class="paramname"><em>__from_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const intern_type *&amp;&#160;</td>
          <td class="paramname"><em>__from_next</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&amp;&#160;</td>
          <td class="paramname"><em>__to_next</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert from internal to external character set. </p>
<p>Converts input string of intern_type to output string of extern_type. This is analogous to wcsrtombs. It does this by calling <a class="el" href="a00614.html#a7a5c720e37027b56e41f10b8e9313821" title="Convert from internal to external character set.">codecvt::do_out</a>.</p>
<p>The source and destination character sets are determined by the facet's locale, internal and external types.</p>
<p>The characters in [from,from_end) are converted and written to [to,to_end). from_next and to_next are set to point to the character following the last successfully converted character, respectively. If the result needed no conversion, from_next and to_next are not affected.</p>
<p>The <em>state</em> argument should be initialized if the input is at the beginning and carried from a previous call if continuing conversion. There are no guarantees about how <em>state</em> is used.</p>
<p>The result returned is a member of codecvt_base::result. If all the input is converted, returns codecvt_base::ok. If no conversion is necessary, returns codecvt_base::noconv. If the input ends early or there is insufficient space in the output, returns codecvt_base::partial. Otherwise the conversion failed and codecvt_base::error is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">__state</td><td>Persistent conversion state data. </td></tr>
    <tr><td class="paramname">__from</td><td>Start of input. </td></tr>
    <tr><td class="paramname">__from_end</td><td>End of input. </td></tr>
    <tr><td class="paramname">__from_next</td><td>Returns start of unconverted data. </td></tr>
    <tr><td class="paramname">__to</td><td>Start of output buffer. </td></tr>
    <tr><td class="paramname">__to_end</td><td>End of output buffer. </td></tr>
    <tr><td class="paramname">__to_next</td><td>Returns start of unused output area. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>codecvt_base::result. </dd></dl>

<p>Definition at line <a class="el" href="a01044_source.html#l00117">117</a> of file <a class="el" href="a01044_source.html">codecvt.h</a>.</p>

</div>
</div>
<a class="anchor" id="a254f4ced9556f8f1b3170a47bc632975"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _InternT, typename _ExternT, typename _StateT&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">result <a class="el" href="a00003.html">std::__codecvt_abstract_base</a>&lt; _InternT, _ExternT, _StateT &gt;::unshift </td>
          <td>(</td>
          <td class="paramtype">state_type &amp;&#160;</td>
          <td class="paramname"><em>__state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&#160;</td>
          <td class="paramname"><em>__to_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">extern_type *&amp;&#160;</td>
          <td class="paramname"><em>__to_next</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reset conversion state. </p>
<p>Writes characters to output that would restore <em>state</em> to initial conditions. The idea is that if a partial conversion occurs, then the converting the characters written by this function would leave the state in initial conditions, rather than partial conversion state. It does this by calling codecvt::do_unshift().</p>
<p>For example, if 4 external characters always converted to 1 internal character, and input to <a class="el" href="a00003.html#a18ef5d80a91835a38ed00754c64d414e" title="Convert from external to internal character set.">in()</a> had 6 external characters with state saved, this function would write two characters to the output and set the state to initialized conditions.</p>
<p>The source and destination character sets are determined by the facet's locale, internal and external types.</p>
<p>The result returned is a member of codecvt_base::result. If the state could be reset and data written, returns codecvt_base::ok. If no conversion is necessary, returns codecvt_base::noconv. If the output has insufficient space, returns codecvt_base::partial. Otherwise the reset failed and codecvt_base::error is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">__state</td><td>Persistent conversion state data. </td></tr>
    <tr><td class="paramname">__to</td><td>Start of output buffer. </td></tr>
    <tr><td class="paramname">__to_end</td><td>End of output buffer. </td></tr>
    <tr><td class="paramname">__to_next</td><td>Returns start of unused output area. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>codecvt_base::result. </dd></dl>

<p>Definition at line <a class="el" href="a01044_source.html#l00156">156</a> of file <a class="el" href="a01044_source.html">codecvt.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="a01044_source.html">codecvt.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="a01604.html">std</a></li><li class="navelem"><a class="el" href="a00003.html">__codecvt_abstract_base</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3 </li>
  </ul>
</div>
</body>
</html>