Server IP : 103.119.228.120 / Your IP : 18.119.125.240 Web Server : Apache System : Linux v8.techscape8.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64 User : nobody ( 99) PHP Version : 5.6.40 Disable Function : shell_exec,symlink,system,exec,proc_get_status,proc_nice,proc_terminate,define_syslog_variables,syslog,openlog,closelog,escapeshellcmd,passthru,ocinum cols,ini_alter,leak,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dl,dll,myshellexec,proc_open,socket_bind,proc_close,escapeshellarg,parse_ini_filepopen,fpassthru,exec,passthru,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,popen,show_source,proc_nice,proc_terminate,proc_get_status,proc_close,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,dl,symlink,shell_exec,system,dl,passthru,escapeshellarg,escapeshellcmd,myshellexec,c99_buff_prepare,c99_sess_put,fpassthru,getdisfunc,fx29exec,fx29exec2,is_windows,disp_freespace,fx29sh_getupdate,fx29_buff_prepare,fx29_sess_put,fx29shexit,fx29fsearch,fx29ftpbrutecheck,fx29sh_tools,fx29sh_about,milw0rm,imagez,sh_name,myshellexec,checkproxyhost,dosyayicek,c99_buff_prepare,c99_sess_put,c99getsource,c99sh_getupdate,c99fsearch,c99shexit,view_perms,posix_getpwuid,posix_getgrgid,posix_kill,parse_perms,parsesort,view_perms_color,set_encoder_input,ls_setcheckboxall,ls_reverse_all,rsg_read,rsg_glob,selfURL,dispsecinfo,unix2DosTime,addFile,system,get_users,view_size,DirFiles,DirFilesWide,DirPrintHTMLHeaders,GetFilesTotal,GetTitles,GetTimeTotal,GetMatchesCount,GetFileMatchesCount,GetResultFiles,fs_copy_dir,fs_copy_obj,fs_move_dir,fs_move_obj,fs_rmdir,SearchText,getmicrotime MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/local/ssl/local/ssl/local/easy/share/doc/easy-libicu-doc-4.0.1/ |
Upload File : |
<!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.5"/> <title>ICU 4.0.1: CharacterIterator 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.0.1 </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <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 Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data 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 Structures</span></a></li> <li><a href="classes.html"><span>Data Structure Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data 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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </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-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">CharacterIterator Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div> </div><!--header--> <div class="contents"> <p>Abstract class that defines an API for iteration on text objects. <a href="classCharacterIterator.html#details">More...</a></p> <p><code>#include <<a class="el" href="chariter_8h_source.html">chariter.h</a>></code></p> <div class="dynheader"> Inheritance diagram for CharacterIterator:</div> <div class="dyncontent"> <div class="center"> <img src="classCharacterIterator.png" usemap="#CharacterIterator_map" alt=""/> <map id="CharacterIterator_map" name="CharacterIterator_map"> <area href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. " alt="ForwardCharacterIterator" shape="rect" coords="0,112,157,136"/> <area href="classUObject.html" title="UObject is the common ICU "boilerplate" class. " alt="UObject" shape="rect" coords="0,56,157,80"/> <area href="classUMemory.html" title="UMemory is the common ICU base class. " alt="UMemory" shape="rect" coords="0,0,157,24"/> <area href="classUCharCharacterIterator.html" title="A concrete subclass of CharacterIterator that iterates over the characters (code units or code points..." alt="UCharCharacterIterator" shape="rect" coords="0,224,157,248"/> <area href="classStringCharacterIterator.html" title="A concrete subclass of CharacterIterator that iterates over the characters (code units or code points..." alt="StringCharacterIterator" shape="rect" coords="0,280,157,304"/> </map> </div></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:aa400f3cff117a0e79ab4246c606c9141"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">EOrigin</a> { <b>kStart</b>, <b>kCurrent</b>, <b>kEnd</b> }</td></tr> <tr class="memdesc:aa400f3cff117a0e79ab4246c606c9141"><td class="mdescLeft"> </td><td class="mdescRight">Origin enumeration for the <a class="el" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634" title="Moves the current position relative to the start or end of the iteration range, or relative to the cu...">move()</a> and <a class="el" href="classCharacterIterator.html#a711c44e0d1a4dbe0a191ff8d2e14b73e" title="Moves the current position relative to the start or end of the iteration range, or relative to the cu...">move32()</a> functions. <a href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">More...</a><br/></td></tr> <tr class="separator:aa400f3cff117a0e79ab4246c606c9141"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_types_classForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classForwardCharacterIterator')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a></td></tr> <tr class="memitem:a5b6537ad55ea252ddb2795076c268997 inherit pub_types_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <b>DONE</b> = 0xffff }</td></tr> <tr class="memdesc:a5b6537ad55ea252ddb2795076c268997"><td class="mdescLeft"> </td><td class="mdescRight">Value returned by most of <a class="el" href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a>'s functions when the iterator has reached the limits of its iteration. <a href="classForwardCharacterIterator.html#a5b6537ad55ea252ddb2795076c268997">More...</a><br/></td></tr> <tr class="separator:a5b6537ad55ea252ddb2795076c268997 inherit pub_types_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </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:adc8a708194960bd2ed640ba8a23e565a"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCharacterIterator.html">CharacterIterator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#adc8a708194960bd2ed640ba8a23e565a">clone</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const =0</td></tr> <tr class="memdesc:adc8a708194960bd2ed640ba8a23e565a"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to a new <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> of the same concrete class as this one, and referring to the same character in the same text-storage object as this one. <a href="#adc8a708194960bd2ed640ba8a23e565a">More...</a><br/></td></tr> <tr class="separator:adc8a708194960bd2ed640ba8a23e565a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afe22aec945697b4459fb4195e1b621c7"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#afe22aec945697b4459fb4195e1b621c7">first</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:afe22aec945697b4459fb4195e1b621c7"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit. <a href="#afe22aec945697b4459fb4195e1b621c7">More...</a><br/></td></tr> <tr class="separator:afe22aec945697b4459fb4195e1b621c7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afe620dca9c565e933dca7139ab1f4210"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#afe620dca9c565e933dca7139ab1f4210">firstPostInc</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)</td></tr> <tr class="memdesc:afe620dca9c565e933dca7139ab1f4210"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the first code unit in its iteration range, returns that code unit, and moves the position to the second code unit. <a href="#afe620dca9c565e933dca7139ab1f4210">More...</a><br/></td></tr> <tr class="separator:afe620dca9c565e933dca7139ab1f4210"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a26486be2a3a24bb1634c3279139d549c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a26486be2a3a24bb1634c3279139d549c">first32</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a26486be2a3a24bb1634c3279139d549c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the first code point in its iteration range, and returns that code unit, This can be used to begin an iteration with <a class="el" href="classCharacterIterator.html#a9521fd47c8637a99776254ee0a0d469e" title="Advances to the next code point in the iteration range (toward endIndex()), and returns that code poi...">next32()</a>. <a href="#a26486be2a3a24bb1634c3279139d549c">More...</a><br/></td></tr> <tr class="separator:a26486be2a3a24bb1634c3279139d549c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9e13e7752a9a3091476ef3d42252bf40"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a9e13e7752a9a3091476ef3d42252bf40">first32PostInc</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)</td></tr> <tr class="memdesc:a9e13e7752a9a3091476ef3d42252bf40"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the first code point in its iteration range, returns that code point, and moves the position to the second code point. <a href="#a9e13e7752a9a3091476ef3d42252bf40">More...</a><br/></td></tr> <tr class="separator:a9e13e7752a9a3091476ef3d42252bf40"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a70bb6445dc7e7cafbd02852a8100cd9e"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a70bb6445dc7e7cafbd02852a8100cd9e">setToStart</a> ()</td></tr> <tr class="memdesc:a70bb6445dc7e7cafbd02852a8100cd9e"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the first code unit or code point in its iteration range. <a href="#a70bb6445dc7e7cafbd02852a8100cd9e">More...</a><br/></td></tr> <tr class="separator:a70bb6445dc7e7cafbd02852a8100cd9e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ace1cd4d7bad7cd6b302df4beef3640be"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#ace1cd4d7bad7cd6b302df4beef3640be">last</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:ace1cd4d7bad7cd6b302df4beef3640be"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit. <a href="#ace1cd4d7bad7cd6b302df4beef3640be">More...</a><br/></td></tr> <tr class="separator:ace1cd4d7bad7cd6b302df4beef3640be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a88c76a273fb1889aa00272fe0965831b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a88c76a273fb1889aa00272fe0965831b">last32</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a88c76a273fb1889aa00272fe0965831b"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the last code point in its iteration range, and returns that code unit. <a href="#a88c76a273fb1889aa00272fe0965831b">More...</a><br/></td></tr> <tr class="separator:a88c76a273fb1889aa00272fe0965831b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a38e0b6be47a35be38fc13172d67005f1"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a38e0b6be47a35be38fc13172d67005f1">setToEnd</a> ()</td></tr> <tr class="memdesc:a38e0b6be47a35be38fc13172d67005f1"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to the end of its iteration range, just behind the last code unit or code point. <a href="#a38e0b6be47a35be38fc13172d67005f1">More...</a><br/></td></tr> <tr class="separator:a38e0b6be47a35be38fc13172d67005f1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0a1fd04a11c18fc3049934b353c431eb"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a0a1fd04a11c18fc3049934b353c431eb">setIndex</a> (int32_t position)=0</td></tr> <tr class="memdesc:a0a1fd04a11c18fc3049934b353c431eb"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the "position"-th code unit in the text-storage object the iterator refers to, and returns that code unit. <a href="#a0a1fd04a11c18fc3049934b353c431eb">More...</a><br/></td></tr> <tr class="separator:a0a1fd04a11c18fc3049934b353c431eb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a380715d71de513e075e3e27d2abe595e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a380715d71de513e075e3e27d2abe595e">setIndex32</a> (int32_t position)=0</td></tr> <tr class="memdesc:a380715d71de513e075e3e27d2abe595e"><td class="mdescLeft"> </td><td class="mdescRight">Sets the iterator to refer to the beginning of the code point that contains the "position"-th code unit in the text-storage object the iterator refers to, and returns that code point. <a href="#a380715d71de513e075e3e27d2abe595e">More...</a><br/></td></tr> <tr class="separator:a380715d71de513e075e3e27d2abe595e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6a481f104f8b9446c1e95ea4c47d8228"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a6a481f104f8b9446c1e95ea4c47d8228">current</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const =0</td></tr> <tr class="memdesc:a6a481f104f8b9446c1e95ea4c47d8228"><td class="mdescLeft"> </td><td class="mdescRight">Returns the code unit the iterator currently refers to. <a href="#a6a481f104f8b9446c1e95ea4c47d8228">More...</a><br/></td></tr> <tr class="separator:a6a481f104f8b9446c1e95ea4c47d8228"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af2e58620e65172866d073435a3425a11"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#af2e58620e65172866d073435a3425a11">current32</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const =0</td></tr> <tr class="memdesc:af2e58620e65172866d073435a3425a11"><td class="mdescLeft"> </td><td class="mdescRight">Returns the code point the iterator currently refers to. <a href="#af2e58620e65172866d073435a3425a11">More...</a><br/></td></tr> <tr class="separator:af2e58620e65172866d073435a3425a11"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a82bd3961ea1e045cbb533633d15ab00d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a82bd3961ea1e045cbb533633d15ab00d">next</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a82bd3961ea1e045cbb533633d15ab00d"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the next code unit in the iteration range (toward <a class="el" href="classCharacterIterator.html#a3a4f8b46a10f11f0b2d1a393c02d84e0" title="Returns the numeric index in the underlying text-storage object of the position immediately BEYOND th...">endIndex()</a>), and returns that code unit. <a href="#a82bd3961ea1e045cbb533633d15ab00d">More...</a><br/></td></tr> <tr class="separator:a82bd3961ea1e045cbb533633d15ab00d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9521fd47c8637a99776254ee0a0d469e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a9521fd47c8637a99776254ee0a0d469e">next32</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a9521fd47c8637a99776254ee0a0d469e"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the next code point in the iteration range (toward <a class="el" href="classCharacterIterator.html#a3a4f8b46a10f11f0b2d1a393c02d84e0" title="Returns the numeric index in the underlying text-storage object of the position immediately BEYOND th...">endIndex()</a>), and returns that code point. <a href="#a9521fd47c8637a99776254ee0a0d469e">More...</a><br/></td></tr> <tr class="separator:a9521fd47c8637a99776254ee0a0d469e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7dfde118a5b6e7755cb4b237c616873f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f">previous</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a7dfde118a5b6e7755cb4b237c616873f"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the previous code unit in the iteration range (toward <a class="el" href="classCharacterIterator.html#a9183d23e57ab5571c907295f5a45893d" title="Returns the numeric index in the underlying text-storage object of the character returned by first()...">startIndex()</a>), and returns that code unit. <a href="#a7dfde118a5b6e7755cb4b237c616873f">More...</a><br/></td></tr> <tr class="separator:a7dfde118a5b6e7755cb4b237c616873f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9630a5fbd755633cf46c33c3a42c5457"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a9630a5fbd755633cf46c33c3a42c5457">previous32</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a9630a5fbd755633cf46c33c3a42c5457"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the previous code point in the iteration range (toward <a class="el" href="classCharacterIterator.html#a9183d23e57ab5571c907295f5a45893d" title="Returns the numeric index in the underlying text-storage object of the character returned by first()...">startIndex()</a>), and returns that code point. <a href="#a9630a5fbd755633cf46c33c3a42c5457">More...</a><br/></td></tr> <tr class="separator:a9630a5fbd755633cf46c33c3a42c5457"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a785a86ae2f1730806eef19595f14d1aa"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a785a86ae2f1730806eef19595f14d1aa">hasPrevious</a> ()=0</td></tr> <tr class="memdesc:a785a86ae2f1730806eef19595f14d1aa"><td class="mdescLeft"> </td><td class="mdescRight">Returns FALSE if there are no more code units or code points before the current position in the iteration range. <a href="#a785a86ae2f1730806eef19595f14d1aa">More...</a><br/></td></tr> <tr class="separator:a785a86ae2f1730806eef19595f14d1aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9183d23e57ab5571c907295f5a45893d"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a9183d23e57ab5571c907295f5a45893d">startIndex</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const </td></tr> <tr class="memdesc:a9183d23e57ab5571c907295f5a45893d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the numeric index in the underlying text-storage object of the character returned by <a class="el" href="classCharacterIterator.html#afe22aec945697b4459fb4195e1b621c7" title="Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit...">first()</a>. <a href="#a9183d23e57ab5571c907295f5a45893d">More...</a><br/></td></tr> <tr class="separator:a9183d23e57ab5571c907295f5a45893d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3a4f8b46a10f11f0b2d1a393c02d84e0"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a3a4f8b46a10f11f0b2d1a393c02d84e0">endIndex</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const </td></tr> <tr class="memdesc:a3a4f8b46a10f11f0b2d1a393c02d84e0"><td class="mdescLeft"> </td><td class="mdescRight">Returns the numeric index in the underlying text-storage object of the position immediately BEYOND the character returned by <a class="el" href="classCharacterIterator.html#ace1cd4d7bad7cd6b302df4beef3640be" title="Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit...">last()</a>. <a href="#a3a4f8b46a10f11f0b2d1a393c02d84e0">More...</a><br/></td></tr> <tr class="separator:a3a4f8b46a10f11f0b2d1a393c02d84e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a522cefaae2a07cd2b2f3282e7da60fdb"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a522cefaae2a07cd2b2f3282e7da60fdb">getIndex</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const </td></tr> <tr class="memdesc:a522cefaae2a07cd2b2f3282e7da60fdb"><td class="mdescLeft"> </td><td class="mdescRight">Returns the numeric index in the underlying text-storage object of the character the iterator currently refers to (i.e., the character returned by <a class="el" href="classCharacterIterator.html#a6a481f104f8b9446c1e95ea4c47d8228" title="Returns the code unit the iterator currently refers to. ">current()</a>). <a href="#a522cefaae2a07cd2b2f3282e7da60fdb">More...</a><br/></td></tr> <tr class="separator:a522cefaae2a07cd2b2f3282e7da60fdb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a41436db33a5481117f89b343d47a6e97"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a41436db33a5481117f89b343d47a6e97">getLength</a> () const </td></tr> <tr class="memdesc:a41436db33a5481117f89b343d47a6e97"><td class="mdescLeft"> </td><td class="mdescRight">Returns the length of the entire text in the underlying text-storage object. <a href="#a41436db33a5481117f89b343d47a6e97">More...</a><br/></td></tr> <tr class="separator:a41436db33a5481117f89b343d47a6e97"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a16d3fd1fd0cd893b48a0a5697192d634"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634">move</a> (int32_t delta, <a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">EOrigin</a> origin)=0</td></tr> <tr class="memdesc:a16d3fd1fd0cd893b48a0a5697192d634"><td class="mdescLeft"> </td><td class="mdescRight">Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. <a href="#a16d3fd1fd0cd893b48a0a5697192d634">More...</a><br/></td></tr> <tr class="separator:a16d3fd1fd0cd893b48a0a5697192d634"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a711c44e0d1a4dbe0a191ff8d2e14b73e"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a711c44e0d1a4dbe0a191ff8d2e14b73e">move32</a> (int32_t delta, <a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">EOrigin</a> origin)=0</td></tr> <tr class="memdesc:a711c44e0d1a4dbe0a191ff8d2e14b73e"><td class="mdescLeft"> </td><td class="mdescRight">Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. <a href="#a711c44e0d1a4dbe0a191ff8d2e14b73e">More...</a><br/></td></tr> <tr class="separator:a711c44e0d1a4dbe0a191ff8d2e14b73e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03c54d93e6fe1d3be187c67acb957410"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a03c54d93e6fe1d3be187c67acb957410">getText</a> (<a class="el" href="classUnicodeString.html">UnicodeString</a> &result)=0</td></tr> <tr class="memdesc:a03c54d93e6fe1d3be187c67acb957410"><td class="mdescLeft"> </td><td class="mdescRight">Copies the text under iteration into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> referred to by "result". <a href="#a03c54d93e6fe1d3be187c67acb957410">More...</a><br/></td></tr> <tr class="separator:a03c54d93e6fe1d3be187c67acb957410"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_classForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classForwardCharacterIterator')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a></td></tr> <tr class="memitem:a5d7a74e28d40b3234f7beb4f175649d1 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a5d7a74e28d40b3234f7beb4f175649d1">~ForwardCharacterIterator</a> ()</td></tr> <tr class="memdesc:a5d7a74e28d40b3234f7beb4f175649d1 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#a5d7a74e28d40b3234f7beb4f175649d1">More...</a><br/></td></tr> <tr class="separator:a5d7a74e28d40b3234f7beb4f175649d1 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3359b21f630495c271715decce6703f4 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a3359b21f630495c271715decce6703f4">operator==</a> (const <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a> &that) const =0</td></tr> <tr class="memdesc:a3359b21f630495c271715decce6703f4 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Returns true when both iterators refer to the same character in the same character-storage object. <a href="#a3359b21f630495c271715decce6703f4">More...</a><br/></td></tr> <tr class="separator:a3359b21f630495c271715decce6703f4 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab55ea12533e313565bef5d4b3b020f76 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#ab55ea12533e313565bef5d4b3b020f76">operator!=</a> (const <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a> &that) const </td></tr> <tr class="memdesc:ab55ea12533e313565bef5d4b3b020f76 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Returns true when the iterators refer to different text-storage objects, or to different characters in the same text-storage object. <a href="#ab55ea12533e313565bef5d4b3b020f76">More...</a><br/></td></tr> <tr class="separator:ab55ea12533e313565bef5d4b3b020f76 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0b9696ca3d4d27b22a2744a2c498b4d7 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a0b9696ca3d4d27b22a2744a2c498b4d7">hashCode</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const =0</td></tr> <tr class="memdesc:a0b9696ca3d4d27b22a2744a2c498b4d7 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Generates a hash code for this iterator. <a href="#a0b9696ca3d4d27b22a2744a2c498b4d7">More...</a><br/></td></tr> <tr class="separator:a0b9696ca3d4d27b22a2744a2c498b4d7 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac86e1b248f61b462458896b2113099b3 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#ac86e1b248f61b462458896b2113099b3">getDynamicClassID</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>) const =0</td></tr> <tr class="memdesc:ac86e1b248f61b462458896b2113099b3 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Returns a UClassID for this <a class="el" href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a> ("poor man's RTTI"). <a href="#ac86e1b248f61b462458896b2113099b3">More...</a><br/></td></tr> <tr class="separator:ac86e1b248f61b462458896b2113099b3 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a713194d8a27d3f50fe0454b8286921cc inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a713194d8a27d3f50fe0454b8286921cc">nextPostInc</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:a713194d8a27d3f50fe0454b8286921cc inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Gets the current code unit for returning and advances to the next code unit in the iteration range (toward endIndex()). <a href="#a713194d8a27d3f50fe0454b8286921cc">More...</a><br/></td></tr> <tr class="separator:a713194d8a27d3f50fe0454b8286921cc inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acb902b4e8c192937270157bb1afca237 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237">next32PostInc</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a>)=0</td></tr> <tr class="memdesc:acb902b4e8c192937270157bb1afca237 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Gets the current code point for returning and advances to the next code point in the iteration range (toward endIndex()). <a href="#acb902b4e8c192937270157bb1afca237">More...</a><br/></td></tr> <tr class="separator:acb902b4e8c192937270157bb1afca237 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab53c28ee0b9ff659983ded76e53f6251 inherit pub_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#ab53c28ee0b9ff659983ded76e53f6251">hasNext</a> ()=0</td></tr> <tr class="memdesc:ab53c28ee0b9ff659983ded76e53f6251 inherit pub_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Returns FALSE if there are no more code units or code points at or after the current position in the iteration range. <a href="#ab53c28ee0b9ff659983ded76e53f6251">More...</a><br/></td></tr> <tr class="separator:ab53c28ee0b9ff659983ded76e53f6251 inherit pub_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_classUObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classUObject')"><img src="closed.png" alt="-"/> 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 </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"> </td><td class="mdescRight">Destructor. <a href="#ace22cf29a90641ef43350deae5bedb85">More...</a><br/></td></tr> <tr class="separator:ace22cf29a90641ef43350deae5bedb85 inherit pub_methods_classUObject"><td class="memSeparator" colspan="2"> </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:a1221d9ac55c0c3dbdc91d4ae667888db"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a1221d9ac55c0c3dbdc91d4ae667888db">CharacterIterator</a> ()</td></tr> <tr class="memdesc:a1221d9ac55c0c3dbdc91d4ae667888db"><td class="mdescLeft"> </td><td class="mdescRight">Empty constructor. <a href="#a1221d9ac55c0c3dbdc91d4ae667888db">More...</a><br/></td></tr> <tr class="separator:a1221d9ac55c0c3dbdc91d4ae667888db"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a546dee20db39cdee1fae5deab92e67ff"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a546dee20db39cdee1fae5deab92e67ff">CharacterIterator</a> (int32_t length)</td></tr> <tr class="memdesc:a546dee20db39cdee1fae5deab92e67ff"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length field in this base class. <a href="#a546dee20db39cdee1fae5deab92e67ff">More...</a><br/></td></tr> <tr class="separator:a546dee20db39cdee1fae5deab92e67ff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4da97d3afb6b8434eea11823f8eb78d6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a4da97d3afb6b8434eea11823f8eb78d6">CharacterIterator</a> (int32_t length, int32_t position)</td></tr> <tr class="memdesc:a4da97d3afb6b8434eea11823f8eb78d6"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length and position fields in this base class. <a href="#a4da97d3afb6b8434eea11823f8eb78d6">More...</a><br/></td></tr> <tr class="separator:a4da97d3afb6b8434eea11823f8eb78d6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a73d8a50abf33ac9da63c3c9d463ef7ab"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a73d8a50abf33ac9da63c3c9d463ef7ab">CharacterIterator</a> (int32_t length, int32_t textBegin, int32_t textEnd, int32_t position)</td></tr> <tr class="memdesc:a73d8a50abf33ac9da63c3c9d463ef7ab"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length, start, end, and position fields in this base class. <a href="#a73d8a50abf33ac9da63c3c9d463ef7ab">More...</a><br/></td></tr> <tr class="separator:a73d8a50abf33ac9da63c3c9d463ef7ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5ef75872ea49689d6c75a2597d8028ef"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a5ef75872ea49689d6c75a2597d8028ef">CharacterIterator</a> (const <a class="el" href="classCharacterIterator.html">CharacterIterator</a> &that)</td></tr> <tr class="memdesc:a5ef75872ea49689d6c75a2597d8028ef"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="#a5ef75872ea49689d6c75a2597d8028ef">More...</a><br/></td></tr> <tr class="separator:a5ef75872ea49689d6c75a2597d8028ef"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a24bbd0b8ba0893633c7ddac569f5161a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCharacterIterator.html">CharacterIterator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a24bbd0b8ba0893633c7ddac569f5161a">operator=</a> (const <a class="el" href="classCharacterIterator.html">CharacterIterator</a> &that)</td></tr> <tr class="memdesc:a24bbd0b8ba0893633c7ddac569f5161a"><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <a href="#a24bbd0b8ba0893633c7ddac569f5161a">More...</a><br/></td></tr> <tr class="separator:a24bbd0b8ba0893633c7ddac569f5161a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pro_methods_classForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classForwardCharacterIterator')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a></td></tr> <tr class="memitem:acf59da5fdaf57d8be166ccec06d54672 inherit pro_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#acf59da5fdaf57d8be166ccec06d54672">ForwardCharacterIterator</a> ()</td></tr> <tr class="memdesc:acf59da5fdaf57d8be166ccec06d54672 inherit pro_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor to be overridden in the implementing class. <a href="#acf59da5fdaf57d8be166ccec06d54672">More...</a><br/></td></tr> <tr class="separator:acf59da5fdaf57d8be166ccec06d54672 inherit pro_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1debdc2a50bd25e3663deb46f5bc8f3d inherit pro_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a1debdc2a50bd25e3663deb46f5bc8f3d">ForwardCharacterIterator</a> (const <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a> &other)</td></tr> <tr class="memdesc:a1debdc2a50bd25e3663deb46f5bc8f3d inherit pro_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor to be overridden in the implementing class. <a href="#a1debdc2a50bd25e3663deb46f5bc8f3d">More...</a><br/></td></tr> <tr class="separator:a1debdc2a50bd25e3663deb46f5bc8f3d inherit pro_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a76c13ba2ac6386e2d46ad41df4b7b9a3 inherit pro_methods_classForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classForwardCharacterIterator.html#a76c13ba2ac6386e2d46ad41df4b7b9a3">operator=</a> (const <a class="el" href="classForwardCharacterIterator.html">ForwardCharacterIterator</a> &)</td></tr> <tr class="memdesc:a76c13ba2ac6386e2d46ad41df4b7b9a3 inherit pro_methods_classForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator to be overridden in the implementing class. <a href="#a76c13ba2ac6386e2d46ad41df4b7b9a3">More...</a><br/></td></tr> <tr class="separator:a76c13ba2ac6386e2d46ad41df4b7b9a3 inherit pro_methods_classForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a> Protected Attributes</h2></td></tr> <tr class="memitem:aa30eb2520df4a1737bb8716b07faebc7"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#aa30eb2520df4a1737bb8716b07faebc7">textLength</a></td></tr> <tr class="memdesc:aa30eb2520df4a1737bb8716b07faebc7"><td class="mdescLeft"> </td><td class="mdescRight">Base class text length field. <a href="#aa30eb2520df4a1737bb8716b07faebc7">More...</a><br/></td></tr> <tr class="separator:aa30eb2520df4a1737bb8716b07faebc7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a31cf308271cffffd314e8e93e7e9518e"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#a31cf308271cffffd314e8e93e7e9518e">pos</a></td></tr> <tr class="memdesc:a31cf308271cffffd314e8e93e7e9518e"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the current position. <a href="#a31cf308271cffffd314e8e93e7e9518e">More...</a><br/></td></tr> <tr class="separator:a31cf308271cffffd314e8e93e7e9518e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac16ef20e110321b0a78a05193d845dbd"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#ac16ef20e110321b0a78a05193d845dbd">begin</a></td></tr> <tr class="memdesc:ac16ef20e110321b0a78a05193d845dbd"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the start of the iteration range. <a href="#ac16ef20e110321b0a78a05193d845dbd">More...</a><br/></td></tr> <tr class="separator:ac16ef20e110321b0a78a05193d845dbd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afccadd77d7c4440b30816c302ece13d5"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classCharacterIterator.html#afccadd77d7c4440b30816c302ece13d5">end</a></td></tr> <tr class="memdesc:afccadd77d7c4440b30816c302ece13d5"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the end of the iteration range. <a href="#afccadd77d7c4440b30816c302ece13d5">More...</a><br/></td></tr> <tr class="separator:afccadd77d7c4440b30816c302ece13d5"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> Additional Inherited Members</h2></td></tr> <tr class="inherit_header pub_static_methods_classUMemory"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classUMemory')"><img src="closed.png" alt="-"/> Static Public Member Functions inherited from <a class="el" href="classUMemory.html">UMemory</a></td></tr> <tr class="memitem:a309b19b5777e2840b85b202aef5a54fb inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#a309b19b5777e2840b85b202aef5a54fb">operator new</a> (size_t size)</td></tr> <tr class="memdesc:a309b19b5777e2840b85b202aef5a54fb inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management. <a href="#a309b19b5777e2840b85b202aef5a54fb">More...</a><br/></td></tr> <tr class="separator:a309b19b5777e2840b85b202aef5a54fb inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4d0df3571728e7b8a823dbbea6e9b5c5 inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#a4d0df3571728e7b8a823dbbea6e9b5c5">operator new[]</a> (size_t size)</td></tr> <tr class="memdesc:a4d0df3571728e7b8a823dbbea6e9b5c5 inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management. <a href="#a4d0df3571728e7b8a823dbbea6e9b5c5">More...</a><br/></td></tr> <tr class="separator:a4d0df3571728e7b8a823dbbea6e9b5c5 inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adcda65a58813749f8f45c5e6c1ed37e1 inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#adcda65a58813749f8f45c5e6c1ed37e1">operator delete</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> *p)</td></tr> <tr class="memdesc:adcda65a58813749f8f45c5e6c1ed37e1 inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management. <a href="#adcda65a58813749f8f45c5e6c1ed37e1">More...</a><br/></td></tr> <tr class="separator:adcda65a58813749f8f45c5e6c1ed37e1 inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7602a7a8c6fdff21d9fbecea4d899333 inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#a7602a7a8c6fdff21d9fbecea4d899333">operator delete[]</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> *p)</td></tr> <tr class="memdesc:a7602a7a8c6fdff21d9fbecea4d899333 inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management. <a href="#a7602a7a8c6fdff21d9fbecea4d899333">More...</a><br/></td></tr> <tr class="separator:a7602a7a8c6fdff21d9fbecea4d899333 inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43b5221fe429f77230b2040f8724c154 inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#a43b5221fe429f77230b2040f8724c154">operator new</a> (size_t, <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> *ptr)</td></tr> <tr class="memdesc:a43b5221fe429f77230b2040f8724c154 inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management for STL. <a href="#a43b5221fe429f77230b2040f8724c154">More...</a><br/></td></tr> <tr class="separator:a43b5221fe429f77230b2040f8724c154 inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9b746b0cdb49c8f8907773002ea5c4ea inherit pub_static_methods_classUMemory"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classUMemory.html#a9b746b0cdb49c8f8907773002ea5c4ea">operator delete</a> (<a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> *, <a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> *)</td></tr> <tr class="memdesc:a9b746b0cdb49c8f8907773002ea5c4ea inherit pub_static_methods_classUMemory"><td class="mdescLeft"> </td><td class="mdescRight">Override for ICU4C C++ memory management for STL. <a href="#a9b746b0cdb49c8f8907773002ea5c4ea">More...</a><br/></td></tr> <tr class="separator:a9b746b0cdb49c8f8907773002ea5c4ea inherit pub_static_methods_classUMemory"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Abstract class that defines an API for iteration on text objects. </p> <p>This is an interface for forward and backward iteration and random access into a text object.</p> <p>The API provides backward compatibility to the Java and older ICU <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> classes but extends them significantly: </p> <ol> <li> <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> is now a subclass of <a class="el" href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a>. </li> <li> While the old API functions provided forward iteration with "pre-increment" semantics, the new one also provides functions with "post-increment" semantics. They are more efficient and should be the preferred iterator functions for new implementations. The backward iteration always had "pre-decrement" semantics, which are efficient. </li> <li> Just like <a class="el" href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a>, it provides access to both code units and code points. Code point access versions are available for the old and the new iteration semantics. </li> <li> There are new functions for setting and moving the current position without returning a character, for efficiency. </li> </ol> <p>See <a class="el" href="classForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a> for examples for using the new forward iteration functions. For backward iteration, there is also a <a class="el" href="classCharacterIterator.html#a785a86ae2f1730806eef19595f14d1aa" title="Returns FALSE if there are no more code units or code points before the current position in the itera...">hasPrevious()</a> function that can be used analogously to <a class="el" href="classForwardCharacterIterator.html#ab53c28ee0b9ff659983ded76e53f6251" title="Returns FALSE if there are no more code units or code points at or after the current position in the ...">hasNext()</a>. The old functions work as before and are shown below.</p> <p>Examples for some of the new functions:</p> <p>Forward iteration with <a class="el" href="classForwardCharacterIterator.html#ab53c28ee0b9ff659983ded76e53f6251" title="Returns FALSE if there are no more code units or code points at or after the current position in the ...">hasNext()</a>: </p> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> forward1(<a class="code" href="classCharacterIterator.html">CharacterIterator</a> &it) {</div> <div class="line">* <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c;</div> <div class="line">* <span class="keywordflow">for</span>(it.<a class="code" href="classCharacterIterator.html#a70bb6445dc7e7cafbd02852a8100cd9e">setToStart</a>(); it.<a class="code" href="classForwardCharacterIterator.html#ab53c28ee0b9ff659983ded76e53f6251">hasNext</a>();) {</div> <div class="line">* c=it.<a class="code" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237">next32PostInc</a>();</div> <div class="line">* <span class="comment">// use c</span></div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --><p> Forward iteration more similar to loops with the old forward iteration, showing a way to convert simple for() loops: </p> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> forward2(<a class="code" href="classCharacterIterator.html">CharacterIterator</a> &it) {</div> <div class="line">* <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c;</div> <div class="line">* <span class="keywordflow">for</span>(c=it.<a class="code" href="classCharacterIterator.html#afe620dca9c565e933dca7139ab1f4210">firstPostInc</a>(); c!=CharacterIterator::DONE; c=it.<a class="code" href="classForwardCharacterIterator.html#a713194d8a27d3f50fe0454b8286921cc">nextPostInc</a>()) {</div> <div class="line">* <span class="comment">// use c</span></div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --><p> Backward iteration with <a class="el" href="classCharacterIterator.html#a38e0b6be47a35be38fc13172d67005f1" title="Sets the iterator to the end of its iteration range, just behind the last code unit or code point...">setToEnd()</a> and <a class="el" href="classCharacterIterator.html#a785a86ae2f1730806eef19595f14d1aa" title="Returns FALSE if there are no more code units or code points before the current position in the itera...">hasPrevious()</a>: </p> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> backward1(<a class="code" href="classCharacterIterator.html">CharacterIterator</a> &it) {</div> <div class="line">* <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c;</div> <div class="line">* <span class="keywordflow">for</span>(it.<a class="code" href="classCharacterIterator.html#a38e0b6be47a35be38fc13172d67005f1">setToEnd</a>(); it.<a class="code" href="classCharacterIterator.html#a785a86ae2f1730806eef19595f14d1aa">hasPrevious</a>();) {</div> <div class="line">* c=it.<a class="code" href="classCharacterIterator.html#a9630a5fbd755633cf46c33c3a42c5457">previous32</a>();</div> <div class="line">* <span class="comment">// use c</span></div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --><p> Backward iteration with a more traditional for() loop: </p> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> backward2(<a class="code" href="classCharacterIterator.html">CharacterIterator</a> &it) {</div> <div class="line">* <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c;</div> <div class="line">* <span class="keywordflow">for</span>(c=it.<a class="code" href="classCharacterIterator.html#ace1cd4d7bad7cd6b302df4beef3640be">last</a>(); c!=CharacterIterator::DONE; c=it.<a class="code" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f">previous</a>()) {</div> <div class="line">* <span class="comment">// use c</span></div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --><p>Example for random access: </p> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> random(<a class="code" href="classCharacterIterator.html">CharacterIterator</a> &it) {</div> <div class="line">* <span class="comment">// set to the third code point from the beginning</span></div> <div class="line">* it.<a class="code" href="classCharacterIterator.html#a711c44e0d1a4dbe0a191ff8d2e14b73e">move32</a>(3, CharacterIterator::kStart);</div> <div class="line">* <span class="comment">// get a code point from here without moving the position</span></div> <div class="line">* <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c=it.<a class="code" href="classCharacterIterator.html#af2e58620e65172866d073435a3425a11">current32</a>();</div> <div class="line">* <span class="comment">// get the position</span></div> <div class="line">* int32_t <a class="code" href="classCharacterIterator.html#a31cf308271cffffd314e8e93e7e9518e">pos</a>=it.<a class="code" href="classCharacterIterator.html#a522cefaae2a07cd2b2f3282e7da60fdb">getIndex</a>();</div> <div class="line">* <span class="comment">// get the previous code unit</span></div> <div class="line">* <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> u=it.<a class="code" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f">previous</a>();</div> <div class="line">* <span class="comment">// move back one more code unit</span></div> <div class="line">* it.<a class="code" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634">move</a>(-1, CharacterIterator::kCurrent);</div> <div class="line">* <span class="comment">// set the position back to where it was</span></div> <div class="line">* <span class="comment">// and read the same code point c and move beyond it</span></div> <div class="line">* it.<a class="code" href="classCharacterIterator.html#a0a1fd04a11c18fc3049934b353c431eb">setIndex</a>(pos);</div> <div class="line">* <span class="keywordflow">if</span>(c!=it.<a class="code" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237">next32PostInc</a>()) {</div> <div class="line">* exit(1); <span class="comment">// CharacterIterator inconsistent</span></div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --><p>Examples, especially for the old API:</p> <p>Function processing characters, in this example simple output </p> <pre> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> processChar( <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c )</div> <div class="line">* {</div> <div class="line">* cout << <span class="stringliteral">" "</span> << c;</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --> </pre><p> Traverse the text from start to finish </p> <pre> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> traverseForward(<a class="code" href="classCharacterIterator.html">CharacterIterator</a>& iter)</div> <div class="line">* {</div> <div class="line">* <span class="keywordflow">for</span>(<a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c = iter.first(); c != <a class="code" href="classCharacterIterator.html">CharacterIterator</a>.DONE; c = iter.next()) {</div> <div class="line">* processChar(c);</div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --> </pre><p> Traverse the text backwards, from end to start </p> <pre> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> traverseBackward(<a class="code" href="classCharacterIterator.html">CharacterIterator</a>& iter)</div> <div class="line">* {</div> <div class="line">* <span class="keywordflow">for</span>(<a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c = iter.last(); c != <a class="code" href="classCharacterIterator.html">CharacterIterator</a>.DONE; c = iter.previous()) {</div> <div class="line">* processChar(c);</div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --> </pre><p> Traverse both forward and backward from a given position in the text. Calls to notBoundary() in this example represents some additional stopping criteria. </p> <pre> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> traverseOut(<a class="code" href="classCharacterIterator.html">CharacterIterator</a>& iter, int32_t pos)</div> <div class="line">* {</div> <div class="line">* <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> c;</div> <div class="line">* <span class="keywordflow">for</span> (c = iter.setIndex(pos);</div> <div class="line">* c != <a class="code" href="classCharacterIterator.html">CharacterIterator</a>.DONE && (Unicode::isLetter(c) || Unicode::isDigit(c));</div> <div class="line">* c = iter.next()) {}</div> <div class="line">* int32_t <a class="code" href="classCharacterIterator.html#afccadd77d7c4440b30816c302ece13d5">end</a> = iter.getIndex();</div> <div class="line">* <span class="keywordflow">for</span> (c = iter.setIndex(pos);</div> <div class="line">* c != <a class="code" href="classCharacterIterator.html">CharacterIterator</a>.DONE && (Unicode::isLetter(c) || Unicode::isDigit(c));</div> <div class="line">* c = iter.previous()) {}</div> <div class="line">* int32_t start = iter.getIndex() + 1;</div> <div class="line">* </div> <div class="line">* cout << <span class="stringliteral">"start: "</span> << start << <span class="stringliteral">" end: "</span> << end << endl;</div> <div class="line">* <span class="keywordflow">for</span> (c = iter.setIndex(start); iter.getIndex() < <a class="code" href="classCharacterIterator.html#afccadd77d7c4440b30816c302ece13d5">end</a>; c = iter.next() ) {</div> <div class="line">* processChar(c);</div> <div class="line">* }</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --> </pre><p> Creating a <a class="el" href="classStringCharacterIterator.html" title="A concrete subclass of CharacterIterator that iterates over the characters (code units or code points...">StringCharacterIterator</a> and calling the test functions </p> <pre> <div class="fragment"><div class="line">* <span class="keywordtype">void</span> CharacterIterator_Example( <span class="keywordtype">void</span> )</div> <div class="line">* {</div> <div class="line">* cout << endl << <span class="stringliteral">"===== CharacterIterator_Example: ====="</span> << endl;</div> <div class="line">* <a class="code" href="classUnicodeString.html">UnicodeString</a> text(<span class="stringliteral">"Ein kleiner Satz."</span>);</div> <div class="line">* <a class="code" href="classStringCharacterIterator.html">StringCharacterIterator</a> iterator(text);</div> <div class="line">* cout << <span class="stringliteral">"----- traverseForward: -----------"</span> << endl;</div> <div class="line">* traverseForward( iterator );</div> <div class="line">* cout << endl << endl << <span class="stringliteral">"----- traverseBackward: ----------"</span> << endl;</div> <div class="line">* traverseBackward( iterator );</div> <div class="line">* cout << endl << endl << <span class="stringliteral">"----- traverseOut: ---------------"</span> << endl;</div> <div class="line">* traverseOut( iterator, 7 );</div> <div class="line">* cout << endl << endl << <span class="stringliteral">"-----"</span> << endl;</div> <div class="line">* }</div> <div class="line">* </div> </div><!-- fragment --> </pre><dl class="stable"><dt><b><a class="el" href="stable.html#_stable000046">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00356">356</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div><h2 class="groupheader">Member Enumeration Documentation</h2> <a class="anchor" id="aa400f3cff117a0e79ab4246c606c9141"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">CharacterIterator::EOrigin</a></td> </tr> </table> </div><div class="memdoc"> <p>Origin enumeration for the <a class="el" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634" title="Moves the current position relative to the start or end of the iteration range, or relative to the cu...">move()</a> and <a class="el" href="classCharacterIterator.html#a711c44e0d1a4dbe0a191ff8d2e14b73e" title="Moves the current position relative to the start or end of the iteration range, or relative to the cu...">move32()</a> functions. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000059">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00362">362</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="a1221d9ac55c0c3dbdc91d4ae667888db"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Empty constructor. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000085">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a class="anchor" id="a546dee20db39cdee1fae5deab92e67ff"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>length</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor, just setting the length field in this base class. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000086">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a class="anchor" id="a4da97d3afb6b8434eea11823f8eb78d6"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>length</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t </td> <td class="paramname"><em>position</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor, just setting the length and position fields in this base class. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000087">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a class="anchor" id="a73d8a50abf33ac9da63c3c9d463ef7ab"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>length</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t </td> <td class="paramname"><em>textBegin</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t </td> <td class="paramname"><em>textEnd</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int32_t </td> <td class="paramname"><em>position</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor, just setting the length, start, end, and position fields in this base class. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000088">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a class="anchor" id="a5ef75872ea49689d6c75a2597d8028ef"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCharacterIterator.html">CharacterIterator</a> & </td> <td class="paramname"><em>that</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Copy constructor. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">that</td><td>The <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> to be copied </td></tr> </table> </dd> </dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000089">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="adc8a708194960bd2ed640ba8a23e565a"></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="classCharacterIterator.html">CharacterIterator</a>* CharacterIterator::clone </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns a pointer to a new <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> of the same concrete class as this one, and referring to the same character in the same text-storage object as this one. </p> <p>The caller is responsible for deleting the new clone. </p> <dl class="section return"><dt>Returns</dt><dd>a pointer to a new <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000060">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#ac18052a38fd6f798b35730f9f520670e">UCharCharacterIterator</a>, and <a class="el" href="classStringCharacterIterator.html#a63dfbbd9648fc51a2b6ca2aa1547e7bf">StringCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a6a481f104f8b9446c1e95ea4c47d8228"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::current </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the code unit the iterator currently refers to. </p> <dl class="section return"><dt>Returns</dt><dd>the current code unit. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000071">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a10965f3134514745a6b5e6b5a7cfe112">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="af2e58620e65172866d073435a3425a11"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::current32 </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the code point the iterator currently refers to. </p> <dl class="section return"><dt>Returns</dt><dd>the current code point. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000072">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#aed9f725320ffd71c3371a9f44678f4b5">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a3a4f8b46a10f11f0b2d1a393c02d84e0"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::endIndex </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the numeric index in the underlying text-storage object of the position immediately BEYOND the character returned by <a class="el" href="classCharacterIterator.html#ace1cd4d7bad7cd6b302df4beef3640be" title="Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit...">last()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the numeric index in the underlying text-storage object of the position immediately BEYOND the character returned by <a class="el" href="classCharacterIterator.html#ace1cd4d7bad7cd6b302df4beef3640be" title="Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit...">last()</a>. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000079">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00701">701</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="chariter_8h_source.html#l00677">end</a>.</p> </div> </div> <a class="anchor" id="afe22aec945697b4459fb4195e1b621c7"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::first </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit. </p> <p>This can be used to begin an iteration with <a class="el" href="classCharacterIterator.html#a82bd3961ea1e045cbb533633d15ab00d" title="Advances to the next code unit in the iteration range (toward endIndex()), and returns that code unit...">next()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the first code unit in its iteration range. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000061">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a4af76d76056ee67ffa8bf957dadadb46">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a26486be2a3a24bb1634c3279139d549c"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::first32 </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the first code point in its iteration range, and returns that code unit, This can be used to begin an iteration with <a class="el" href="classCharacterIterator.html#a9521fd47c8637a99776254ee0a0d469e" title="Advances to the next code point in the iteration range (toward endIndex()), and returns that code poi...">next32()</a>. </p> <p>Note that an iteration with <a class="el" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237" title="Gets the current code point for returning and advances to the next code point in the iteration range ...">next32PostInc()</a>, beginning with, e.g., <a class="el" href="classCharacterIterator.html#a70bb6445dc7e7cafbd02852a8100cd9e" title="Sets the iterator to refer to the first code unit or code point in its iteration range. ">setToStart()</a> or <a class="el" href="classCharacterIterator.html#afe620dca9c565e933dca7139ab1f4210" title="Sets the iterator to refer to the first code unit in its iteration range, returns that code unit...">firstPostInc()</a>, is more efficient. </p> <dl class="section return"><dt>Returns</dt><dd>the first code point in its iteration range. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000063">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a75c44dbee395784ca1bc305c0df5ac0a">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a9e13e7752a9a3091476ef3d42252bf40"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::first32PostInc </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the first code point in its iteration range, returns that code point, and moves the position to the second code point. </p> <p>This is an alternative to <a class="el" href="classCharacterIterator.html#a70bb6445dc7e7cafbd02852a8100cd9e" title="Sets the iterator to refer to the first code unit or code point in its iteration range. ">setToStart()</a> for forward iteration with <a class="el" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237" title="Gets the current code point for returning and advances to the next code point in the iteration range ...">next32PostInc()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the first code point in its iteration range. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000064">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Reimplemented in <a class="el" href="classUCharCharacterIterator.html#a939627c8e79d5eeb58866ec4cf50d8e2">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="afe620dca9c565e933dca7139ab1f4210"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::firstPostInc </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the first code unit in its iteration range, returns that code unit, and moves the position to the second code unit. </p> <p>This is an alternative to <a class="el" href="classCharacterIterator.html#a70bb6445dc7e7cafbd02852a8100cd9e" title="Sets the iterator to refer to the first code unit or code point in its iteration range. ">setToStart()</a> for forward iteration with <a class="el" href="classForwardCharacterIterator.html#a713194d8a27d3f50fe0454b8286921cc" title="Gets the current code unit for returning and advances to the next code unit in the iteration range (t...">nextPostInc()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the first code unit in its iteration range. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000062">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Reimplemented in <a class="el" href="classUCharCharacterIterator.html#a11ab50c4ae556528779a1b3352a66608">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a522cefaae2a07cd2b2f3282e7da60fdb"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::getIndex </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the numeric index in the underlying text-storage object of the character the iterator currently refers to (i.e., the character returned by <a class="el" href="classCharacterIterator.html#a6a481f104f8b9446c1e95ea4c47d8228" title="Returns the code unit the iterator currently refers to. ">current()</a>). </p> <dl class="section return"><dt>Returns</dt><dd>the numberic index in the text-storage object of the character the iterator currently refers to </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000080">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00706">706</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="chariter_8h_source.html#l00665">pos</a>.</p> </div> </div> <a class="anchor" id="a41436db33a5481117f89b343d47a6e97"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::getLength </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the length of the entire text in the underlying text-storage object. </p> <dl class="section return"><dt>Returns</dt><dd>the length of the entire text in the text-storage object </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000081">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00711">711</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="chariter_8h_source.html#l00659">textLength</a>.</p> </div> </div> <a class="anchor" id="a03c54d93e6fe1d3be187c67acb957410"></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="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> CharacterIterator::getText </td> <td>(</td> <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> & </td> <td class="paramname"><em>result</em></td><td>)</td> <td></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>Copies the text under iteration into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> referred to by "result". </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">result</td><td>Receives a copy of the text under iteration. </td></tr> </table> </dd> </dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000084">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a09f0d751c4215a06c829d0edee036204">UCharCharacterIterator</a>, and <a class="el" href="classStringCharacterIterator.html#a6a7a27b16cade56d95388a7134d86cc0">StringCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a785a86ae2f1730806eef19595f14d1aa"></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="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> CharacterIterator::hasPrevious </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></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>Returns FALSE if there are no more code units or code points before the current position in the iteration range. </p> <p>This is used with <a class="el" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f" title="Advances to the previous code unit in the iteration range (toward startIndex()), and returns that cod...">previous()</a> or <a class="el" href="classCharacterIterator.html#a9630a5fbd755633cf46c33c3a42c5457" title="Advances to the previous code point in the iteration range (toward startIndex()), and returns that co...">previous32()</a> in backward iteration. </p> <dl class="section return"><dt>Returns</dt><dd>FALSE if there are no more code units or code points before the current position in the iteration range, return TRUE otherwise. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000077">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a5bbcb759c08029f37eeb1f84aa4cdf93">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="ace1cd4d7bad7cd6b302df4beef3640be"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::last </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit. </p> <p>This can be used to begin an iteration with <a class="el" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f" title="Advances to the previous code unit in the iteration range (toward startIndex()), and returns that cod...">previous()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the last code unit. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000066">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a45a39e51e55dfa159281915aa7750470">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a88c76a273fb1889aa00272fe0965831b"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::last32 </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the last code point in its iteration range, and returns that code unit. </p> <p>This can be used to begin an iteration with <a class="el" href="classCharacterIterator.html#a9630a5fbd755633cf46c33c3a42c5457" title="Advances to the previous code point in the iteration range (toward startIndex()), and returns that co...">previous32()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the last code point. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000067">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a5797ce9b95f2971323f3ce6d18f78115">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a16d3fd1fd0cd893b48a0a5697192d634"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual int32_t CharacterIterator::move </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>delta</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">EOrigin</a> </td> <td class="paramname"><em>origin</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></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>Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. </p> <p>The movement is expressed in numbers of code units forward or backward by specifying a positive or negative delta. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">delta</td><td>the position relative to origin. A positive delta means forward; a negative delta means backward. </td></tr> <tr><td class="paramname">origin</td><td>Origin enumeration {kStart, kCurrent, kEnd} </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the new position </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000082">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a578c741398b7fa617015fb63dd647916">UCharCharacterIterator</a>.</p> <p>Referenced by <a class="el" href="chariter_8h_source.html#l00691">setToEnd()</a>, and <a class="el" href="chariter_8h_source.html#l00686">setToStart()</a>.</p> </div> </div> <a class="anchor" id="a711c44e0d1a4dbe0a191ff8d2e14b73e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual int32_t CharacterIterator::move32 </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>delta</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCharacterIterator.html#aa400f3cff117a0e79ab4246c606c9141">EOrigin</a> </td> <td class="paramname"><em>origin</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></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>Moves the current position relative to the start or end of the iteration range, or relative to the current position itself. </p> <p>The movement is expressed in numbers of code points forward or backward by specifying a positive or negative delta. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">delta</td><td>the position relative to origin. A positive delta means forward; a negative delta means backward. </td></tr> <tr><td class="paramname">origin</td><td>Origin enumeration {kStart, kCurrent, kEnd} </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the new position </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000083">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a26943e223ac654f34f56ac7b6bce873d">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a82bd3961ea1e045cbb533633d15ab00d"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::next </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Advances to the next code unit in the iteration range (toward <a class="el" href="classCharacterIterator.html#a3a4f8b46a10f11f0b2d1a393c02d84e0" title="Returns the numeric index in the underlying text-storage object of the position immediately BEYOND th...">endIndex()</a>), and returns that code unit. </p> <p>If there are no more code units to return, returns DONE. </p> <dl class="section return"><dt>Returns</dt><dd>the next code unit. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000073">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a111aa9828fb355799cbd44357fd1ed16">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a9521fd47c8637a99776254ee0a0d469e"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::next32 </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Advances to the next code point in the iteration range (toward <a class="el" href="classCharacterIterator.html#a3a4f8b46a10f11f0b2d1a393c02d84e0" title="Returns the numeric index in the underlying text-storage object of the position immediately BEYOND th...">endIndex()</a>), and returns that code point. </p> <p>If there are no more code points to return, returns DONE. Note that iteration with "pre-increment" semantics is less efficient than iteration with "post-increment" semantics that is provided by <a class="el" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237" title="Gets the current code point for returning and advances to the next code point in the iteration range ...">next32PostInc()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the next code point. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000074">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a4b98bb816070fdac8751e65e0bcb9d2c">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a24bbd0b8ba0893633c7ddac569f5161a"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCharacterIterator.html">CharacterIterator</a>& CharacterIterator::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCharacterIterator.html">CharacterIterator</a> & </td> <td class="paramname"><em>that</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Assignment operator. </p> <p>Sets this <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> to have the same behavior, as the one passed in. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">that</td><td>The <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> passed in. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the newly set <a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a>. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000090">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a class="anchor" id="a7dfde118a5b6e7755cb4b237c616873f"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::previous </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Advances to the previous code unit in the iteration range (toward <a class="el" href="classCharacterIterator.html#a9183d23e57ab5571c907295f5a45893d" title="Returns the numeric index in the underlying text-storage object of the character returned by first()...">startIndex()</a>), and returns that code unit. </p> <p>If there are no more code units to return, returns DONE. </p> <dl class="section return"><dt>Returns</dt><dd>the previous code unit. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000075">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#ac4e824a93673b3f42614b74dbefacece">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a9630a5fbd755633cf46c33c3a42c5457"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::previous32 </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></td><td>)</td> <td></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>Advances to the previous code point in the iteration range (toward <a class="el" href="classCharacterIterator.html#a9183d23e57ab5571c907295f5a45893d" title="Returns the numeric index in the underlying text-storage object of the character returned by first()...">startIndex()</a>), and returns that code point. </p> <p>If there are no more code points to return, returns DONE. </p> <dl class="section return"><dt>Returns</dt><dd>the previous code point. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000076">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#aa01e7b0113a3a0ba158e869ee5aa8fc5">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a0a1fd04a11c18fc3049934b353c431eb"></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="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> CharacterIterator::setIndex </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>position</em></td><td>)</td> <td></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>Sets the iterator to refer to the "position"-th code unit in the text-storage object the iterator refers to, and returns that code unit. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">position</td><td>the "position"-th code unit in the text-storage object </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the "position"-th code unit. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000069">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#a92b670d7eb8675c9198ee5cfabaec9fd">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a380715d71de513e075e3e27d2abe595e"></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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> CharacterIterator::setIndex32 </td> <td>(</td> <td class="paramtype">int32_t </td> <td class="paramname"><em>position</em></td><td>)</td> <td></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>Sets the iterator to refer to the beginning of the code point that contains the "position"-th code unit in the text-storage object the iterator refers to, and returns that code point. </p> <p>The current position is adjusted to the beginning of the code point (its first code unit). </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">position</td><td>the "position"-th code unit in the text-storage object </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the "position"-th code point. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000070">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classUCharCharacterIterator.html#ab6cc35d39638235e83782fdc11ecca93">UCharCharacterIterator</a>.</p> </div> </div> <a class="anchor" id="a38e0b6be47a35be38fc13172d67005f1"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::setToEnd </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to the end of its iteration range, just behind the last code unit or code point. </p> <p>This can be used to begin a backward iteration with <a class="el" href="classCharacterIterator.html#a7dfde118a5b6e7755cb4b237c616873f" title="Advances to the previous code unit in the iteration range (toward startIndex()), and returns that cod...">previous()</a> or <a class="el" href="classCharacterIterator.html#a9630a5fbd755633cf46c33c3a42c5457" title="Advances to the previous code point in the iteration range (toward startIndex()), and returns that co...">previous32()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the end position of the iteration range </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000068">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00691">691</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634">move()</a>.</p> </div> </div> <a class="anchor" id="a70bb6445dc7e7cafbd02852a8100cd9e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::setToStart </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></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>Sets the iterator to refer to the first code unit or code point in its iteration range. </p> <p>This can be used to begin a forward iteration with <a class="el" href="classForwardCharacterIterator.html#a713194d8a27d3f50fe0454b8286921cc" title="Gets the current code unit for returning and advances to the next code unit in the iteration range (t...">nextPostInc()</a> or <a class="el" href="classForwardCharacterIterator.html#acb902b4e8c192937270157bb1afca237" title="Gets the current code point for returning and advances to the next code point in the iteration range ...">next32PostInc()</a>. </p> <dl class="section return"><dt>Returns</dt><dd>the start position of the iteration range </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000065">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00686">686</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="classCharacterIterator.html#a16d3fd1fd0cd893b48a0a5697192d634">move()</a>.</p> </div> </div> <a class="anchor" id="a9183d23e57ab5571c907295f5a45893d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::startIndex </td> <td>(</td> <td class="paramtype"><a class="el" href="ucnv_8h.html#aa953bd3cedaedf78b700c837361fe00b">void</a> </td> <td class="paramname"></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>Returns the numeric index in the underlying text-storage object of the character returned by <a class="el" href="classCharacterIterator.html#afe22aec945697b4459fb4195e1b621c7" title="Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit...">first()</a>. </p> <p>Since it's possible to create an iterator that iterates across only part of a text-storage object, this number isn't necessarily 0. </p> <dl class="section return"><dt>Returns</dt><dd>the numeric index in the underlying text-storage object of the character returned by <a class="el" href="classCharacterIterator.html#afe22aec945697b4459fb4195e1b621c7" title="Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit...">first()</a>. </dd></dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000078">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00696">696</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>References <a class="el" href="chariter_8h_source.html#l00671">begin</a>.</p> </div> </div> <h2 class="groupheader">Field Documentation</h2> <a class="anchor" id="ac16ef20e110321b0a78a05193d845dbd"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::begin</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Base class field for the start of the iteration range. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000093">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00671">671</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>Referenced by <a class="el" href="chariter_8h_source.html#l00696">startIndex()</a>.</p> </div> </div> <a class="anchor" id="afccadd77d7c4440b30816c302ece13d5"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::end</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Base class field for the end of the iteration range. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000094">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00677">677</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>Referenced by <a class="el" href="chariter_8h_source.html#l00701">endIndex()</a>.</p> </div> </div> <a class="anchor" id="a31cf308271cffffd314e8e93e7e9518e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::pos</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Base class field for the current position. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000092">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00665">665</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>Referenced by <a class="el" href="chariter_8h_source.html#l00706">getIndex()</a>.</p> </div> </div> <a class="anchor" id="aa30eb2520df4a1737bb8716b07faebc7"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t CharacterIterator::textLength</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Base class text length field. </p> <p>Necessary this for correct <a class="el" href="classCharacterIterator.html#a03c54d93e6fe1d3be187c67acb957410" title="Copies the text under iteration into the UnicodeString referred to by "result". ">getText()</a> and <a class="el" href="classForwardCharacterIterator.html#a0b9696ca3d4d27b22a2744a2c498b4d7" title="Generates a hash code for this iterator. ">hashCode()</a>. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000091">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Definition at line <a class="el" href="chariter_8h_source.html#l00659">659</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> <p>Referenced by <a class="el" href="chariter_8h_source.html#l00711">getLength()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="chariter_8h_source.html">chariter.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.5 </small></address> </body> </html>