Sophie

Sophie

distrib > Fedora > 17 > i386 > by-pkgid > 0508df3f0f31cdc1fec017f60572b2b0 > files > 134

libicu-doc-4.8.1.1-5.fc17.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"/>
<title>ICU 4.8.1.1: IDNA Class 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</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">ICU 4.8.1.1
   &#160;<span id="projectnumber">4.8.1.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">IDNA Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Abstract base class for <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing.  
 <a href="classIDNA.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="idna_8h_source.html">idna.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for IDNA:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classIDNA.png" usemap="#IDNA_map" alt=""/>
  <map id="IDNA_map" name="IDNA_map">
<area href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class." alt="UObject" shape="rect" coords="0,56,66,80"/>
<area href="classUMemory.html" title="UMemory is the common ICU base class." alt="UMemory" shape="rect" coords="0,0,66,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aaef1a26492d68398b95dbd14f1f1edb4"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#aaef1a26492d68398b95dbd14f1f1edb4">labelToASCII</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;label, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const =0</td></tr>
<tr class="memdesc:aaef1a26492d68398b95dbd14f1f1edb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a single domain name label into its ASCII form for DNS lookup.  <a href="#aaef1a26492d68398b95dbd14f1f1edb4"></a><br/></td></tr>
<tr class="memitem:a82e90cc557f7640288df292137e8f654"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#a82e90cc557f7640288df292137e8f654">labelToUnicode</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;label, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const =0</td></tr>
<tr class="memdesc:a82e90cc557f7640288df292137e8f654"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a single domain name label into its Unicode form for human-readable display.  <a href="#a82e90cc557f7640288df292137e8f654"></a><br/></td></tr>
<tr class="memitem:a8208300e4138a059ad8e3edce103ddfe"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#a8208300e4138a059ad8e3edce103ddfe">nameToASCII</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;name, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const =0</td></tr>
<tr class="memdesc:a8208300e4138a059ad8e3edce103ddfe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a whole domain name into its ASCII form for DNS lookup.  <a href="#a8208300e4138a059ad8e3edce103ddfe"></a><br/></td></tr>
<tr class="memitem:a7446df679555a96e0c966b114b91e895"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#a7446df679555a96e0c966b114b91e895">nameToUnicode</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;name, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const =0</td></tr>
<tr class="memdesc:a7446df679555a96e0c966b114b91e895"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a whole domain name into its Unicode form for human-readable display.  <a href="#a7446df679555a96e0c966b114b91e895"></a><br/></td></tr>
<tr class="memitem:a2091a4a4a7933c6ec4c727dbaa8e801b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#a2091a4a4a7933c6ec4c727dbaa8e801b">labelToASCII_UTF8</a> (const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;label, <a class="el" href="classByteSink.html">ByteSink</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr class="memdesc:a2091a4a4a7933c6ec4c727dbaa8e801b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a single domain name label into its ASCII form for DNS lookup.  <a href="#a2091a4a4a7933c6ec4c727dbaa8e801b"></a><br/></td></tr>
<tr class="memitem:ac76652d2806dc19bc0da8e40eb709403"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#ac76652d2806dc19bc0da8e40eb709403">labelToUnicodeUTF8</a> (const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;label, <a class="el" href="classByteSink.html">ByteSink</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr class="memdesc:ac76652d2806dc19bc0da8e40eb709403"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a single domain name label into its Unicode form for human-readable display.  <a href="#ac76652d2806dc19bc0da8e40eb709403"></a><br/></td></tr>
<tr class="memitem:af536bee8d1e0701c1354bcb2011ddc62"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#af536bee8d1e0701c1354bcb2011ddc62">nameToASCII_UTF8</a> (const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;name, <a class="el" href="classByteSink.html">ByteSink</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr class="memdesc:af536bee8d1e0701c1354bcb2011ddc62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a whole domain name into its ASCII form for DNS lookup.  <a href="#af536bee8d1e0701c1354bcb2011ddc62"></a><br/></td></tr>
<tr class="memitem:af46685d1a5bfd1da47cdd67d67a87f1a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#af46685d1a5bfd1da47cdd67d67a87f1a">nameToUnicodeUTF8</a> (const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;name, <a class="el" href="classByteSink.html">ByteSink</a> &amp;dest, <a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;info, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr class="memdesc:af46685d1a5bfd1da47cdd67d67a87f1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a whole domain name into its Unicode form for human-readable display.  <a href="#af46685d1a5bfd1da47cdd67d67a87f1a"></a><br/></td></tr>
<tr class="inherit_header pub_methods_classUObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classUObject')"><img src="closed.png" alt="-"/>&nbsp;Public Member Functions inherited from <a class="el" href="classUObject.html">UObject</a></td></tr>
<tr class="memitem:ace22cf29a90641ef43350deae5bedb85 inherit pub_methods_classUObject"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUObject.html#ace22cf29a90641ef43350deae5bedb85">~UObject</a> ()</td></tr>
<tr class="memdesc:ace22cf29a90641ef43350deae5bedb85 inherit pub_methods_classUObject"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ace22cf29a90641ef43350deae5bedb85"></a><br/></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:adc7314a7b6ba20ad40204e5016de33a5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classIDNA.html">IDNA</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIDNA.html#adc7314a7b6ba20ad40204e5016de33a5">createUTS46Instance</a> (<a class="el" href="pwin32_8h.html#a435d1572bf3f880d55459d9805097f62">uint32_t</a> options, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode)</td></tr>
<tr class="memdesc:adc7314a7b6ba20ad40204e5016de33a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> instance which implements UTS #46.  <a href="#adc7314a7b6ba20ad40204e5016de33a5"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Abstract base class for <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing. </p>
<p>See <a href="http://www.unicode.org/reports/tr46/">http://www.unicode.org/reports/tr46/</a> and <a href="http://www.ietf.org/rfc/rfc3490.txt">http://www.ietf.org/rfc/rfc3490.txt</a></p>
<p>The <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> class is not intended for public subclassing.</p>
<p>This C++ API currently only implements UTS #46. The <a class="el" href="uidna_8h.html" title="C API: Internationalizing Domain Names in Applications (IDNA)">uidna.h</a> C API implements both UTS #46 (functions using UIDNA service object) and IDNA2003 (functions that do not use a service object). </p>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000048">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

<p>Definition at line <a class="el" href="idna_8h_source.html#l00048">48</a> of file <a class="el" href="idna_8h_source.html">idna.h</a>.</p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="adc7314a7b6ba20ad40204e5016de33a5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classIDNA.html">IDNA</a>* IDNA::createUTS46Instance </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#a435d1572bf3f880d55459d9805097f62">uint32_t</a>&#160;</td>
          <td class="paramname"><em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns an <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> instance which implements UTS #46. </p>
<p>Returns an unmodifiable instance, owned by the caller. Cache it for multiple operations, and delete it when done. The instance is thread-safe, that is, it can be used concurrently.</p>
<p>UTS #46 defines Unicode <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> Compatibility Processing, updated to the latest version of Unicode and compatible with both IDNA2003 and IDNA2008.</p>
<p>The worker functions use transitional processing, including deviation mappings, unless UIDNA_NONTRANSITIONAL_TO_ASCII or UIDNA_NONTRANSITIONAL_TO_UNICODE is used in which case the deviation characters are passed through without change.</p>
<p>Disallowed characters are mapped to U+FFFD.</p>
<p>For available options see the <a class="el" href="uidna_8h.html" title="C API: Internationalizing Domain Names in Applications (IDNA)">uidna.h</a> header. Operations with the UTS #46 instance do not support the UIDNA_ALLOW_UNASSIGNED option.</p>
<p>By default, the UTS #46 implementation allows all ASCII characters (as valid or mapped). When the UIDNA_USE_STD3_RULES option is used, ASCII characters other than letters, digits, hyphen (LDH) and dot/full stop are disallowed and mapped to U+FFFD.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">options</td><td>Bit set to modify the processing and error checking. See option bit set values in <a class="el" href="uidna_8h.html" title="C API: Internationalizing Domain Names in Applications (IDNA)">uidna.h</a>. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>the UTS #46 <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> instance, if successful </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000050">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="aaef1a26492d68398b95dbd14f1f1edb4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; IDNA::labelToASCII </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a single domain name label into its ASCII form for DNS lookup. </p>
<p>If any processing step fails, then info.hasErrors() will be TRUE and the result might not be an ASCII string. The label might be modified according to the types of errors. Labels with severe errors will be left in (or turned into) their Unicode form.</p>
<p>The UErrorCode indicates an error only in exceptional cases, such as a U_MEMORY_ALLOCATION_ERROR.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">label</td><td>Input domain name label </td></tr>
    <tr><td class="paramname">dest</td><td>Destination string object </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000051">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="a2091a4a4a7933c6ec4c727dbaa8e801b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDNA::labelToASCII_UTF8 </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classByteSink.html">ByteSink</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a single domain name label into its ASCII form for DNS lookup. </p>
<p>UTF-8 version of <a class="el" href="classIDNA.html#aaef1a26492d68398b95dbd14f1f1edb4" title="Converts a single domain name label into its ASCII form for DNS lookup.">labelToASCII()</a>, same behavior.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">label</td><td>Input domain name label </td></tr>
    <tr><td class="paramname">dest</td><td>Destination byte sink; Flush()ed if successful </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000055">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="a82e90cc557f7640288df292137e8f654"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; IDNA::labelToUnicode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a single domain name label into its Unicode form for human-readable display. </p>
<p>If any processing step fails, then info.hasErrors() will be TRUE. The label might be modified according to the types of errors.</p>
<p>The UErrorCode indicates an error only in exceptional cases, such as a U_MEMORY_ALLOCATION_ERROR.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">label</td><td>Input domain name label </td></tr>
    <tr><td class="paramname">dest</td><td>Destination string object </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000052">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="ac76652d2806dc19bc0da8e40eb709403"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDNA::labelToUnicodeUTF8 </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classByteSink.html">ByteSink</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a single domain name label into its Unicode form for human-readable display. </p>
<p>UTF-8 version of <a class="el" href="classIDNA.html#a82e90cc557f7640288df292137e8f654" title="Converts a single domain name label into its Unicode form for human-readable display.">labelToUnicode()</a>, same behavior.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">label</td><td>Input domain name label </td></tr>
    <tr><td class="paramname">dest</td><td>Destination byte sink; Flush()ed if successful </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000056">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="a8208300e4138a059ad8e3edce103ddfe"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; IDNA::nameToASCII </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a whole domain name into its ASCII form for DNS lookup. </p>
<p>If any processing step fails, then info.hasErrors() will be TRUE and the result might not be an ASCII string. The domain name might be modified according to the types of errors. Labels with severe errors will be left in (or turned into) their Unicode form.</p>
<p>The UErrorCode indicates an error only in exceptional cases, such as a U_MEMORY_ALLOCATION_ERROR.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Input domain name </td></tr>
    <tr><td class="paramname">dest</td><td>Destination string object </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000053">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="af536bee8d1e0701c1354bcb2011ddc62"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDNA::nameToASCII_UTF8 </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classByteSink.html">ByteSink</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a whole domain name into its ASCII form for DNS lookup. </p>
<p>UTF-8 version of <a class="el" href="classIDNA.html#a8208300e4138a059ad8e3edce103ddfe" title="Converts a whole domain name into its ASCII form for DNS lookup.">nameToASCII()</a>, same behavior.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Input domain name </td></tr>
    <tr><td class="paramname">dest</td><td>Destination byte sink; Flush()ed if successful </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000057">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="a7446df679555a96e0c966b114b91e895"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; IDNA::nameToUnicode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a whole domain name into its Unicode form for human-readable display. </p>
<p>If any processing step fails, then info.hasErrors() will be TRUE. The domain name might be modified according to the types of errors.</p>
<p>The UErrorCode indicates an error only in exceptional cases, such as a U_MEMORY_ALLOCATION_ERROR.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Input domain name </td></tr>
    <tr><td class="paramname">dest</td><td>Destination string object </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000054">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<a class="anchor" id="af46685d1a5bfd1da47cdd67d67a87f1a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void IDNA::nameToUnicodeUTF8 </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classStringPiece.html">StringPiece</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classByteSink.html">ByteSink</a> &amp;&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIDNAInfo.html">IDNAInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>errorCode</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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Converts a whole domain name into its Unicode form for human-readable display. </p>
<p>UTF-8 version of <a class="el" href="classIDNA.html#a7446df679555a96e0c966b114b91e895" title="Converts a whole domain name into its Unicode form for human-readable display.">nameToUnicode()</a>, same behavior.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Input domain name </td></tr>
    <tr><td class="paramname">dest</td><td>Destination byte sink; Flush()ed if successful </td></tr>
    <tr><td class="paramname">info</td><td>Output container of <a class="el" href="classIDNA.html" title="Abstract base class for IDNA processing.">IDNA</a> processing details. </td></tr>
    <tr><td class="paramname">errorCode</td><td>Standard ICU error code. Its input value must pass the <a class="el" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711" title="Does the error code indicate success?">U_SUCCESS()</a> test, or else the function returns immediately. Check for <a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE()</a> on output or use with function chaining. (See User Guide for details.) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>dest </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000058">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.6 </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="idna_8h_source.html">idna.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>