Файловый менеджер - Редактировать - /opt/alt/alt-nodejs20/root/usr/share/doc/alt-nodejs20-libicu-doc/classicu_1_1CharacterIterator.html
Назад
<!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.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>ICU 78.3: icu::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/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></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 id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">ICU 78.3  <span id="projectnumber">78.3</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </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 id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceicu.html">icu</a></li><li class="navelem"><a class="el" href="classicu_1_1CharacterIterator.html">CharacterIterator</a></li> </ul> </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">icu::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="classicu_1_1CharacterIterator.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 icu::CharacterIterator:</div> <div class="dyncontent"> <div class="center"> <img src="classicu_1_1CharacterIterator.png" usemap="#icu::CharacterIterator_map" alt=""/> <map id="icu::CharacterIterator_map" name="icu::CharacterIterator_map"> <area href="classicu_1_1ForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. " alt="icu::ForwardCharacterIterator" shape="rect" coords="0,112,180,136"/> <area href="classicu_1_1UObject.html" title="UObject is the common ICU "boilerplate" class. " alt="icu::UObject" shape="rect" coords="0,56,180,80"/> <area href="classicu_1_1UMemory.html" title="UMemory is the common ICU base class. " alt="icu::UMemory" shape="rect" coords="0,0,180,24"/> <area href="classicu_1_1UCharCharacterIterator.html" title="A concrete subclass of CharacterIterator that iterates over the characters (code units or code points..." alt="icu::UCharCharacterIterator" shape="rect" coords="0,224,180,248"/> <area href="classicu_1_1StringCharacterIterator.html" title="A concrete subclass of CharacterIterator that iterates over the characters (code units or code points..." alt="icu::StringCharacterIterator" shape="rect" coords="0,280,180,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:a065aff1d713f7659faba4951d16f5f38"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">EOrigin</a> { <b>kStart</b>, <b>kCurrent</b>, <b>kEnd</b> }</td></tr> <tr class="memdesc:a065aff1d713f7659faba4951d16f5f38"><td class="mdescLeft"> </td><td class="mdescRight">Origin enumeration for the <a class="el" href="classicu_1_1CharacterIterator.html#a37e9b91a0bd0e9dde2761b603560da9d" 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="classicu_1_1CharacterIterator.html#aac9a417f50cd4d741da7fac3429dad0d" 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="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">More...</a><br /></td></tr> <tr class="separator:a065aff1d713f7659faba4951d16f5f38"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_types_classicu_1_1ForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classicu_1_1ForwardCharacterIterator')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classicu_1_1ForwardCharacterIterator.html">icu::ForwardCharacterIterator</a></td></tr> <tr class="memitem:adbacb49f483a870aefb8e518cc8105c7 inherit pub_types_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <b>DONE</b> = 0xffff }</td></tr> <tr class="memdesc:adbacb49f483a870aefb8e518cc8105c7"><td class="mdescLeft"> </td><td class="mdescRight">Value returned by most of <a class="el" href="classicu_1_1ForwardCharacterIterator.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="classicu_1_1ForwardCharacterIterator.html#adbacb49f483a870aefb8e518cc8105c7">More...</a><br /></td></tr> <tr class="separator:adbacb49f483a870aefb8e518cc8105c7 inherit pub_types_classicu_1_1ForwardCharacterIterator"><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:a6f02b160cc84f55de41adc72cbb9b9ed"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a6f02b160cc84f55de41adc72cbb9b9ed">~CharacterIterator</a> ()</td></tr> <tr class="memdesc:a6f02b160cc84f55de41adc72cbb9b9ed"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#a6f02b160cc84f55de41adc72cbb9b9ed">More...</a><br /></td></tr> <tr class="separator:a6f02b160cc84f55de41adc72cbb9b9ed"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a958ce017088ad4eebbce2524cd614c6b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1CharacterIterator.html">CharacterIterator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a958ce017088ad4eebbce2524cd614c6b">clone</a> () const =0</td></tr> <tr class="memdesc:a958ce017088ad4eebbce2524cd614c6b"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to a new <a class="el" href="classicu_1_1CharacterIterator.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="#a958ce017088ad4eebbce2524cd614c6b">More...</a><br /></td></tr> <tr class="separator:a958ce017088ad4eebbce2524cd614c6b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad6319289e81edc4bacce680a192011e9"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ad6319289e81edc4bacce680a192011e9">first</a> ()=0</td></tr> <tr class="memdesc:ad6319289e81edc4bacce680a192011e9"><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="#ad6319289e81edc4bacce680a192011e9">More...</a><br /></td></tr> <tr class="separator:ad6319289e81edc4bacce680a192011e9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a022ba099b591b768bcbf294a8377cba8"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a022ba099b591b768bcbf294a8377cba8">firstPostInc</a> ()</td></tr> <tr class="memdesc:a022ba099b591b768bcbf294a8377cba8"><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="#a022ba099b591b768bcbf294a8377cba8">More...</a><br /></td></tr> <tr class="separator:a022ba099b591b768bcbf294a8377cba8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a413e8cf1aefcfbbeeda0b234a9d27d51"><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="classicu_1_1CharacterIterator.html#a413e8cf1aefcfbbeeda0b234a9d27d51">first32</a> ()=0</td></tr> <tr class="memdesc:a413e8cf1aefcfbbeeda0b234a9d27d51"><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="classicu_1_1CharacterIterator.html#a9d79153b5c18925aa05fadafbf193665" title="Advances to the next code point in the iteration range (toward endIndex()), and returns that code poi...">next32()</a>. <a href="#a413e8cf1aefcfbbeeda0b234a9d27d51">More...</a><br /></td></tr> <tr class="separator:a413e8cf1aefcfbbeeda0b234a9d27d51"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab6c39b924b47c6433ac274aa603651df"><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="classicu_1_1CharacterIterator.html#ab6c39b924b47c6433ac274aa603651df">first32PostInc</a> ()</td></tr> <tr class="memdesc:ab6c39b924b47c6433ac274aa603651df"><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="#ab6c39b924b47c6433ac274aa603651df">More...</a><br /></td></tr> <tr class="separator:ab6c39b924b47c6433ac274aa603651df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac6e8c16981c7481256c50ab7145185aa"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ac6e8c16981c7481256c50ab7145185aa">setToStart</a> ()</td></tr> <tr class="memdesc:ac6e8c16981c7481256c50ab7145185aa"><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="#ac6e8c16981c7481256c50ab7145185aa">More...</a><br /></td></tr> <tr class="separator:ac6e8c16981c7481256c50ab7145185aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a229f7148e8828f4a36df8f8c89e633a5"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a229f7148e8828f4a36df8f8c89e633a5">last</a> ()=0</td></tr> <tr class="memdesc:a229f7148e8828f4a36df8f8c89e633a5"><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="#a229f7148e8828f4a36df8f8c89e633a5">More...</a><br /></td></tr> <tr class="separator:a229f7148e8828f4a36df8f8c89e633a5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a53e8ec6b96b5fe6fa0c70609c640eafd"><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="classicu_1_1CharacterIterator.html#a53e8ec6b96b5fe6fa0c70609c640eafd">last32</a> ()=0</td></tr> <tr class="memdesc:a53e8ec6b96b5fe6fa0c70609c640eafd"><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="#a53e8ec6b96b5fe6fa0c70609c640eafd">More...</a><br /></td></tr> <tr class="separator:a53e8ec6b96b5fe6fa0c70609c640eafd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac5cff21d4826f4f655303de8fecb5ce5"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ac5cff21d4826f4f655303de8fecb5ce5">setToEnd</a> ()</td></tr> <tr class="memdesc:ac5cff21d4826f4f655303de8fecb5ce5"><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="#ac5cff21d4826f4f655303de8fecb5ce5">More...</a><br /></td></tr> <tr class="separator:ac5cff21d4826f4f655303de8fecb5ce5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ade1384a90f7290121ac40f851aac4f82"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ade1384a90f7290121ac40f851aac4f82">setIndex</a> (int32_t position)=0</td></tr> <tr class="memdesc:ade1384a90f7290121ac40f851aac4f82"><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="#ade1384a90f7290121ac40f851aac4f82">More...</a><br /></td></tr> <tr class="separator:ade1384a90f7290121ac40f851aac4f82"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8519987104888e1af043b146971b6793"><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="classicu_1_1CharacterIterator.html#a8519987104888e1af043b146971b6793">setIndex32</a> (int32_t position)=0</td></tr> <tr class="memdesc:a8519987104888e1af043b146971b6793"><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="#a8519987104888e1af043b146971b6793">More...</a><br /></td></tr> <tr class="separator:a8519987104888e1af043b146971b6793"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6f0c6d250baad1dba12469b076204259"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a6f0c6d250baad1dba12469b076204259">current</a> () const =0</td></tr> <tr class="memdesc:a6f0c6d250baad1dba12469b076204259"><td class="mdescLeft"> </td><td class="mdescRight">Returns the code unit the iterator currently refers to. <a href="#a6f0c6d250baad1dba12469b076204259">More...</a><br /></td></tr> <tr class="separator:a6f0c6d250baad1dba12469b076204259"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab9eb66bc8c1e7bb4f586201456959757"><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="classicu_1_1CharacterIterator.html#ab9eb66bc8c1e7bb4f586201456959757">current32</a> () const =0</td></tr> <tr class="memdesc:ab9eb66bc8c1e7bb4f586201456959757"><td class="mdescLeft"> </td><td class="mdescRight">Returns the code point the iterator currently refers to. <a href="#ab9eb66bc8c1e7bb4f586201456959757">More...</a><br /></td></tr> <tr class="separator:ab9eb66bc8c1e7bb4f586201456959757"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a427d140fc143060f11921138b7eca0e9"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a427d140fc143060f11921138b7eca0e9">next</a> ()=0</td></tr> <tr class="memdesc:a427d140fc143060f11921138b7eca0e9"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the next code unit in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#a73e20de1c8748f4689fbb7c32b7e8b34" 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="#a427d140fc143060f11921138b7eca0e9">More...</a><br /></td></tr> <tr class="separator:a427d140fc143060f11921138b7eca0e9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9d79153b5c18925aa05fadafbf193665"><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="classicu_1_1CharacterIterator.html#a9d79153b5c18925aa05fadafbf193665">next32</a> ()=0</td></tr> <tr class="memdesc:a9d79153b5c18925aa05fadafbf193665"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the next code point in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#a73e20de1c8748f4689fbb7c32b7e8b34" 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="#a9d79153b5c18925aa05fadafbf193665">More...</a><br /></td></tr> <tr class="separator:a9d79153b5c18925aa05fadafbf193665"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad35d0bdd91c91aabb8a51bdb7ce98dd9"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ad35d0bdd91c91aabb8a51bdb7ce98dd9">previous</a> ()=0</td></tr> <tr class="memdesc:ad35d0bdd91c91aabb8a51bdb7ce98dd9"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the previous code unit in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#af513ad27eb8e98714b863834c687ce22" 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="#ad35d0bdd91c91aabb8a51bdb7ce98dd9">More...</a><br /></td></tr> <tr class="separator:ad35d0bdd91c91aabb8a51bdb7ce98dd9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a20742fb6f9b85d4520730768edc229ab"><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="classicu_1_1CharacterIterator.html#a20742fb6f9b85d4520730768edc229ab">previous32</a> ()=0</td></tr> <tr class="memdesc:a20742fb6f9b85d4520730768edc229ab"><td class="mdescLeft"> </td><td class="mdescRight">Advances to the previous code point in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#af513ad27eb8e98714b863834c687ce22" 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="#a20742fb6f9b85d4520730768edc229ab">More...</a><br /></td></tr> <tr class="separator:a20742fb6f9b85d4520730768edc229ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac83ac180f319b25a9e6ab1a80d66d928"><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="classicu_1_1CharacterIterator.html#ac83ac180f319b25a9e6ab1a80d66d928">hasPrevious</a> ()=0</td></tr> <tr class="memdesc:ac83ac180f319b25a9e6ab1a80d66d928"><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="#ac83ac180f319b25a9e6ab1a80d66d928">More...</a><br /></td></tr> <tr class="separator:ac83ac180f319b25a9e6ab1a80d66d928"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af513ad27eb8e98714b863834c687ce22"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#af513ad27eb8e98714b863834c687ce22">startIndex</a> () const</td></tr> <tr class="memdesc:af513ad27eb8e98714b863834c687ce22"><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="classicu_1_1CharacterIterator.html#ad6319289e81edc4bacce680a192011e9" title="Sets the iterator to refer to the first code unit in its iteration range, and returns that code unit...">first()</a>. <a href="#af513ad27eb8e98714b863834c687ce22">More...</a><br /></td></tr> <tr class="separator:af513ad27eb8e98714b863834c687ce22"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a73e20de1c8748f4689fbb7c32b7e8b34"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a73e20de1c8748f4689fbb7c32b7e8b34">endIndex</a> () const</td></tr> <tr class="memdesc:a73e20de1c8748f4689fbb7c32b7e8b34"><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="classicu_1_1CharacterIterator.html#a229f7148e8828f4a36df8f8c89e633a5" title="Sets the iterator to refer to the last code unit in its iteration range, and returns that code unit...">last()</a>. <a href="#a73e20de1c8748f4689fbb7c32b7e8b34">More...</a><br /></td></tr> <tr class="separator:a73e20de1c8748f4689fbb7c32b7e8b34"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab0b409a0d3672619011b2a3655fbb8a4"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ab0b409a0d3672619011b2a3655fbb8a4">getIndex</a> () const</td></tr> <tr class="memdesc:ab0b409a0d3672619011b2a3655fbb8a4"><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="classicu_1_1CharacterIterator.html#a6f0c6d250baad1dba12469b076204259" title="Returns the code unit the iterator currently refers to. ">current()</a>). <a href="#ab0b409a0d3672619011b2a3655fbb8a4">More...</a><br /></td></tr> <tr class="separator:ab0b409a0d3672619011b2a3655fbb8a4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af5697904edc5252ec6c7f6f69a7566bd"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#af5697904edc5252ec6c7f6f69a7566bd">getLength</a> () const</td></tr> <tr class="memdesc:af5697904edc5252ec6c7f6f69a7566bd"><td class="mdescLeft"> </td><td class="mdescRight">Returns the length of the entire text in the underlying text-storage object. <a href="#af5697904edc5252ec6c7f6f69a7566bd">More...</a><br /></td></tr> <tr class="separator:af5697904edc5252ec6c7f6f69a7566bd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a37e9b91a0bd0e9dde2761b603560da9d"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a37e9b91a0bd0e9dde2761b603560da9d">move</a> (int32_t delta, <a class="el" href="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">EOrigin</a> origin)=0</td></tr> <tr class="memdesc:a37e9b91a0bd0e9dde2761b603560da9d"><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="#a37e9b91a0bd0e9dde2761b603560da9d">More...</a><br /></td></tr> <tr class="separator:a37e9b91a0bd0e9dde2761b603560da9d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aac9a417f50cd4d741da7fac3429dad0d"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#aac9a417f50cd4d741da7fac3429dad0d">move32</a> (int32_t delta, <a class="el" href="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">EOrigin</a> origin)=0</td></tr> <tr class="memdesc:aac9a417f50cd4d741da7fac3429dad0d"><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="#aac9a417f50cd4d741da7fac3429dad0d">More...</a><br /></td></tr> <tr class="separator:aac9a417f50cd4d741da7fac3429dad0d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2a71011a2d6f91c7f4ca2c1a2fe6fc7f"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a2a71011a2d6f91c7f4ca2c1a2fe6fc7f">getText</a> (<a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &result)=0</td></tr> <tr class="memdesc:a2a71011a2d6f91c7f4ca2c1a2fe6fc7f"><td class="mdescLeft"> </td><td class="mdescRight">Copies the text under iteration into the <a class="el" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> referred to by "result". <a href="#a2a71011a2d6f91c7f4ca2c1a2fe6fc7f">More...</a><br /></td></tr> <tr class="separator:a2a71011a2d6f91c7f4ca2c1a2fe6fc7f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_classicu_1_1ForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classicu_1_1ForwardCharacterIterator')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classicu_1_1ForwardCharacterIterator.html">icu::ForwardCharacterIterator</a></td></tr> <tr class="memitem:a0efde315650556664036dcd16cbe2722 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a0efde315650556664036dcd16cbe2722">~ForwardCharacterIterator</a> ()</td></tr> <tr class="memdesc:a0efde315650556664036dcd16cbe2722 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="classicu_1_1ForwardCharacterIterator.html#a0efde315650556664036dcd16cbe2722">More...</a><br /></td></tr> <tr class="separator:a0efde315650556664036dcd16cbe2722 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6ccadc2e2814f17bbe3da3c910d1c483 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a6ccadc2e2814f17bbe3da3c910d1c483">operator==</a> (const <a class="el" href="classicu_1_1ForwardCharacterIterator.html">ForwardCharacterIterator</a> &that) const =0</td></tr> <tr class="memdesc:a6ccadc2e2814f17bbe3da3c910d1c483 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#a6ccadc2e2814f17bbe3da3c910d1c483">More...</a><br /></td></tr> <tr class="separator:a6ccadc2e2814f17bbe3da3c910d1c483 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a352bf97b571f23ddff72adcfa54bb05f inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a352bf97b571f23ddff72adcfa54bb05f">operator!=</a> (const <a class="el" href="classicu_1_1ForwardCharacterIterator.html">ForwardCharacterIterator</a> &that) const</td></tr> <tr class="memdesc:a352bf97b571f23ddff72adcfa54bb05f inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#a352bf97b571f23ddff72adcfa54bb05f">More...</a><br /></td></tr> <tr class="separator:a352bf97b571f23ddff72adcfa54bb05f inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a37f9482beea6eeb5bcaffc15adc0fb78 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a37f9482beea6eeb5bcaffc15adc0fb78">hashCode</a> () const =0</td></tr> <tr class="memdesc:a37f9482beea6eeb5bcaffc15adc0fb78 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Generates a hash code for this iterator. <a href="classicu_1_1ForwardCharacterIterator.html#a37f9482beea6eeb5bcaffc15adc0fb78">More...</a><br /></td></tr> <tr class="separator:a37f9482beea6eeb5bcaffc15adc0fb78 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0a0a0c0ae84286dc12e9a60c564bdf0d inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a0a0a0c0ae84286dc12e9a60c564bdf0d">getDynamicClassID</a> () const override=0</td></tr> <tr class="memdesc:a0a0a0c0ae84286dc12e9a60c564bdf0d inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Returns a UClassID for this <a class="el" href="classicu_1_1ForwardCharacterIterator.html" title="Abstract class that defines an API for forward-only iteration on text objects. ">ForwardCharacterIterator</a> ("poor man's RTTI"). <a href="classicu_1_1ForwardCharacterIterator.html#a0a0a0c0ae84286dc12e9a60c564bdf0d">More...</a><br /></td></tr> <tr class="separator:a0a0a0c0ae84286dc12e9a60c564bdf0d inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae8afa480f9b5ed1f7d02e9ac7f282570 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top">virtual char16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#ae8afa480f9b5ed1f7d02e9ac7f282570">nextPostInc</a> ()=0</td></tr> <tr class="memdesc:ae8afa480f9b5ed1f7d02e9ac7f282570 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#ae8afa480f9b5ed1f7d02e9ac7f282570">More...</a><br /></td></tr> <tr class="separator:ae8afa480f9b5ed1f7d02e9ac7f282570 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1c7acabb45b08b15c35c188b95ede651 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651">next32PostInc</a> ()=0</td></tr> <tr class="memdesc:a1c7acabb45b08b15c35c188b95ede651 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651">More...</a><br /></td></tr> <tr class="separator:a1c7acabb45b08b15c35c188b95ede651 inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abf876be6f80694afeeb5086524d249df inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#abf876be6f80694afeeb5086524d249df">hasNext</a> ()=0</td></tr> <tr class="memdesc:abf876be6f80694afeeb5086524d249df inherit pub_methods_classicu_1_1ForwardCharacterIterator"><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="classicu_1_1ForwardCharacterIterator.html#abf876be6f80694afeeb5086524d249df">More...</a><br /></td></tr> <tr class="separator:abf876be6f80694afeeb5086524d249df inherit pub_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_classicu_1_1UObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classicu_1_1UObject')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classicu_1_1UObject.html">icu::UObject</a></td></tr> <tr class="memitem:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1UObject.html#af10026497704f510d3d1f2eff50acb18">~UObject</a> ()</td></tr> <tr class="memdesc:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="classicu_1_1UObject.html#af10026497704f510d3d1f2eff50acb18">More...</a><br /></td></tr> <tr class="separator:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><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:af16635194b2dd485f35a6f2c35240cf2"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a> ()</td></tr> <tr class="memdesc:af16635194b2dd485f35a6f2c35240cf2"><td class="mdescLeft"> </td><td class="mdescRight">Empty constructor. <a href="#af16635194b2dd485f35a6f2c35240cf2">More...</a><br /></td></tr> <tr class="separator:af16635194b2dd485f35a6f2c35240cf2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8b5f0102a268c1d7e74bdb03fdfbf59d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a8b5f0102a268c1d7e74bdb03fdfbf59d">CharacterIterator</a> (int32_t length)</td></tr> <tr class="memdesc:a8b5f0102a268c1d7e74bdb03fdfbf59d"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length field in this base class. <a href="#a8b5f0102a268c1d7e74bdb03fdfbf59d">More...</a><br /></td></tr> <tr class="separator:a8b5f0102a268c1d7e74bdb03fdfbf59d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a20e82be8c18df7bc236e3f66d3c5ce68"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a20e82be8c18df7bc236e3f66d3c5ce68">CharacterIterator</a> (int32_t length, int32_t position)</td></tr> <tr class="memdesc:a20e82be8c18df7bc236e3f66d3c5ce68"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length and position fields in this base class. <a href="#a20e82be8c18df7bc236e3f66d3c5ce68">More...</a><br /></td></tr> <tr class="separator:a20e82be8c18df7bc236e3f66d3c5ce68"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae6aef71dcd8da9e3643f36563c1bf2e8"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ae6aef71dcd8da9e3643f36563c1bf2e8">CharacterIterator</a> (int32_t length, int32_t textBegin, int32_t textEnd, int32_t position)</td></tr> <tr class="memdesc:ae6aef71dcd8da9e3643f36563c1bf2e8"><td class="mdescLeft"> </td><td class="mdescRight">Constructor, just setting the length, start, end, and position fields in this base class. <a href="#ae6aef71dcd8da9e3643f36563c1bf2e8">More...</a><br /></td></tr> <tr class="separator:ae6aef71dcd8da9e3643f36563c1bf2e8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab768bb7859a8801c0d895dcb032a195d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#ab768bb7859a8801c0d895dcb032a195d">CharacterIterator</a> (const <a class="el" href="classicu_1_1CharacterIterator.html">CharacterIterator</a> &that)</td></tr> <tr class="memdesc:ab768bb7859a8801c0d895dcb032a195d"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="#ab768bb7859a8801c0d895dcb032a195d">More...</a><br /></td></tr> <tr class="separator:ab768bb7859a8801c0d895dcb032a195d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af3fd5df0081fd8fccffdd4f1bd8a8811"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1CharacterIterator.html">CharacterIterator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#af3fd5df0081fd8fccffdd4f1bd8a8811">operator=</a> (const <a class="el" href="classicu_1_1CharacterIterator.html">CharacterIterator</a> &that)</td></tr> <tr class="memdesc:af3fd5df0081fd8fccffdd4f1bd8a8811"><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <a href="#af3fd5df0081fd8fccffdd4f1bd8a8811">More...</a><br /></td></tr> <tr class="separator:af3fd5df0081fd8fccffdd4f1bd8a8811"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pro_methods_classicu_1_1ForwardCharacterIterator"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classicu_1_1ForwardCharacterIterator')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classicu_1_1ForwardCharacterIterator.html">icu::ForwardCharacterIterator</a></td></tr> <tr class="memitem:aa338d78a701d10d549e3b1bb3dd93e89 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#aa338d78a701d10d549e3b1bb3dd93e89">ForwardCharacterIterator</a> ()</td></tr> <tr class="memdesc:aa338d78a701d10d549e3b1bb3dd93e89 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor to be overridden in the implementing class. <a href="classicu_1_1ForwardCharacterIterator.html#aa338d78a701d10d549e3b1bb3dd93e89">More...</a><br /></td></tr> <tr class="separator:aa338d78a701d10d549e3b1bb3dd93e89 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a644d4dc45a418f556f69cff56b31871f inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a644d4dc45a418f556f69cff56b31871f">ForwardCharacterIterator</a> (const <a class="el" href="classicu_1_1ForwardCharacterIterator.html">ForwardCharacterIterator</a> &other)</td></tr> <tr class="memdesc:a644d4dc45a418f556f69cff56b31871f inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor to be overridden in the implementing class. <a href="classicu_1_1ForwardCharacterIterator.html#a644d4dc45a418f556f69cff56b31871f">More...</a><br /></td></tr> <tr class="separator:a644d4dc45a418f556f69cff56b31871f inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5b49dbc6510238684b687efb338e77e2 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1ForwardCharacterIterator.html">ForwardCharacterIterator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1ForwardCharacterIterator.html#a5b49dbc6510238684b687efb338e77e2">operator=</a> (const <a class="el" href="classicu_1_1ForwardCharacterIterator.html">ForwardCharacterIterator</a> &)</td></tr> <tr class="memdesc:a5b49dbc6510238684b687efb338e77e2 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator to be overridden in the implementing class. <a href="classicu_1_1ForwardCharacterIterator.html#a5b49dbc6510238684b687efb338e77e2">More...</a><br /></td></tr> <tr class="separator:a5b49dbc6510238684b687efb338e77e2 inherit pro_methods_classicu_1_1ForwardCharacterIterator"><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:a089ec2c9e1cbe7b6b170723c38fd2e55"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a089ec2c9e1cbe7b6b170723c38fd2e55">textLength</a></td></tr> <tr class="memdesc:a089ec2c9e1cbe7b6b170723c38fd2e55"><td class="mdescLeft"> </td><td class="mdescRight">Base class text length field. <a href="#a089ec2c9e1cbe7b6b170723c38fd2e55">More...</a><br /></td></tr> <tr class="separator:a089ec2c9e1cbe7b6b170723c38fd2e55"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a974c6d9bbf0ae1a74688ffdbfc08ad17"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a></td></tr> <tr class="memdesc:a974c6d9bbf0ae1a74688ffdbfc08ad17"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the current position. <a href="#a974c6d9bbf0ae1a74688ffdbfc08ad17">More...</a><br /></td></tr> <tr class="separator:a974c6d9bbf0ae1a74688ffdbfc08ad17"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8a08a04f80fc138a3dee27915412bdec"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#a8a08a04f80fc138a3dee27915412bdec">begin</a></td></tr> <tr class="memdesc:a8a08a04f80fc138a3dee27915412bdec"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the start of the iteration range. <a href="#a8a08a04f80fc138a3dee27915412bdec">More...</a><br /></td></tr> <tr class="separator:a8a08a04f80fc138a3dee27915412bdec"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa3722479f3191d6bcad48a24bd6c8f3e"><td class="memItemLeft" align="right" valign="top">int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CharacterIterator.html#aa3722479f3191d6bcad48a24bd6c8f3e">end</a></td></tr> <tr class="memdesc:aa3722479f3191d6bcad48a24bd6c8f3e"><td class="mdescLeft"> </td><td class="mdescRight">Base class field for the end of the iteration range. <a href="#aa3722479f3191d6bcad48a24bd6c8f3e">More...</a><br /></td></tr> <tr class="separator:aa3722479f3191d6bcad48a24bd6c8f3e"><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="classicu_1_1CharacterIterator.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="classicu_1_1CharacterIterator.html" title="Abstract class that defines an API for iteration on text objects. ">CharacterIterator</a> is now a subclass of <a class="el" href="classicu_1_1ForwardCharacterIterator.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="classicu_1_1ForwardCharacterIterator.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="classicu_1_1ForwardCharacterIterator.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="classicu_1_1CharacterIterator.html#ac83ac180f319b25a9e6ab1a80d66d928" 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="classicu_1_1ForwardCharacterIterator.html#abf876be6f80694afeeb5086524d249df" 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="classicu_1_1ForwardCharacterIterator.html#abf876be6f80694afeeb5086524d249df" 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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">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.setToStart(); it.hasNext();) {</div><div class="line"> c=it.next32PostInc();</div><div class="line"> <span class="comment">// use c</span></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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a> &it) {</div><div class="line"> char16_t c;</div><div class="line"> <span class="keywordflow">for</span>(c=it.firstPostInc(); c!=CharacterIterator::DONE; c=it.nextPostInc()) {</div><div class="line"> <span class="comment">// use c</span></div><div class="line"> }</div><div class="line">}</div></div><!-- fragment --><p> Backward iteration with <a class="el" href="classicu_1_1CharacterIterator.html#ac5cff21d4826f4f655303de8fecb5ce5" 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="classicu_1_1CharacterIterator.html#ac83ac180f319b25a9e6ab1a80d66d928" 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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">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.setToEnd(); it.hasPrevious();) {</div><div class="line"> c=it.previous32();</div><div class="line"> <span class="comment">// use c</span></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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a> &it) {</div><div class="line"> char16_t c;</div><div class="line"> <span class="keywordflow">for</span>(c=it.last(); c!=CharacterIterator::DONE; c=it.previous()) {</div><div class="line"> <span class="comment">// use c</span></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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">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.move32(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.current32();</div><div class="line"> <span class="comment">// get the position</span></div><div class="line"> int32_t <a class="code" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a>=it.getIndex();</div><div class="line"> <span class="comment">// get the previous code unit</span></div><div class="line"> char16_t u=it.previous();</div><div class="line"> <span class="comment">// move back one more code unit</span></div><div class="line"> it.move(-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.setIndex(<a class="code" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a>);</div><div class="line"> <span class="keywordflow">if</span>(c!=it.next32PostInc()) {</div><div class="line"> exit(1); <span class="comment">// CharacterIterator inconsistent</span></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( char16_t c )</div><div class="line">{</div><div class="line"> cout << <span class="stringliteral">" "</span> << c;</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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a>& iter)</div><div class="line">{</div><div class="line"> <span class="keywordflow">for</span>(char16_t c = iter.first(); c != CharacterIterator::DONE; c = iter.next()) {</div><div class="line"> processChar(c);</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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a>& iter)</div><div class="line">{</div><div class="line"> <span class="keywordflow">for</span>(char16_t c = iter.last(); c != CharacterIterator::DONE; c = iter.previous()) {</div><div class="line"> processChar(c);</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="classicu_1_1CharacterIterator.html#af16635194b2dd485f35a6f2c35240cf2">CharacterIterator</a>& iter, int32_t <a class="code" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a>)</div><div class="line">{</div><div class="line"> char16_t c;</div><div class="line"> <span class="keywordflow">for</span> (c = iter.setIndex(<a class="code" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a>);</div><div class="line"> c != CharacterIterator::DONE && (Unicode::isLetter(c) || Unicode::isDigit(c));</div><div class="line"> c = iter.next()) {}</div><div class="line"> int32_t <a class="code" href="classicu_1_1CharacterIterator.html#aa3722479f3191d6bcad48a24bd6c8f3e">end</a> = iter.getIndex();</div><div class="line"> <span class="keywordflow">for</span> (c = iter.setIndex(<a class="code" href="classicu_1_1CharacterIterator.html#a974c6d9bbf0ae1a74688ffdbfc08ad17">pos</a>);</div><div class="line"> c != CharacterIterator::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> << <a class="code" href="classicu_1_1CharacterIterator.html#aa3722479f3191d6bcad48a24bd6c8f3e">end</a> << endl;</div><div class="line"> <span class="keywordflow">for</span> (c = iter.setIndex(start); iter.getIndex() < <a class="code" href="classicu_1_1CharacterIterator.html#aa3722479f3191d6bcad48a24bd6c8f3e">end</a>; c = iter.next() ) {</div><div class="line"> processChar(c);</div><div class="line"> }</div><div class="line"> }</div></div><!-- fragment --> </pre><p> Creating a <a class="el" href="classicu_1_1StringCharacterIterator.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"> UnicodeString text(<span class="stringliteral">"Ein kleiner Satz."</span>);</div><div class="line"> StringCharacterIterator 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><!-- fragment --> </pre><dl class="stable"><dt><b><a class="el" href="stable.html#_stable000149">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00361">361</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div><h2 class="groupheader">Member Enumeration Documentation</h2> <a id="a065aff1d713f7659faba4951d16f5f38"></a> <h2 class="memtitle"><span class="permalink"><a href="#a065aff1d713f7659faba4951d16f5f38">◆ </a></span>EOrigin</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">icu::CharacterIterator::EOrigin</a></td> </tr> </table> </div><div class="memdoc"> <p>Origin enumeration for the <a class="el" href="classicu_1_1CharacterIterator.html#a37e9b91a0bd0e9dde2761b603560da9d" 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="classicu_1_1CharacterIterator.html#aac9a417f50cd4d741da7fac3429dad0d" 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#_stable000162">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00367">367</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 id="a6f02b160cc84f55de41adc72cbb9b9ed"></a> <h2 class="memtitle"><span class="permalink"><a href="#a6f02b160cc84f55de41adc72cbb9b9ed">◆ </a></span>~CharacterIterator()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual icu::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">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Destructor. </p> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000163">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="af16635194b2dd485f35a6f2c35240cf2"></a> <h2 class="memtitle"><span class="permalink"><a href="#af16635194b2dd485f35a6f2c35240cf2">◆ </a></span>CharacterIterator() <span class="overload">[1/5]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">icu::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#_stable000189">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="a8b5f0102a268c1d7e74bdb03fdfbf59d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8b5f0102a268c1d7e74bdb03fdfbf59d">◆ </a></span>CharacterIterator() <span class="overload">[2/5]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">icu::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#_stable000190">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="a20e82be8c18df7bc236e3f66d3c5ce68"></a> <h2 class="memtitle"><span class="permalink"><a href="#a20e82be8c18df7bc236e3f66d3c5ce68">◆ </a></span>CharacterIterator() <span class="overload">[3/5]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">icu::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#_stable000191">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="ae6aef71dcd8da9e3643f36563c1bf2e8"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae6aef71dcd8da9e3643f36563c1bf2e8">◆ </a></span>CharacterIterator() <span class="overload">[4/5]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">icu::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#_stable000192">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="ab768bb7859a8801c0d895dcb032a195d"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab768bb7859a8801c0d895dcb032a195d">◆ </a></span>CharacterIterator() <span class="overload">[5/5]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">icu::CharacterIterator::CharacterIterator </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1CharacterIterator.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="classicu_1_1CharacterIterator.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#_stable000193">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="a958ce017088ad4eebbce2524cd614c6b"></a> <h2 class="memtitle"><span class="permalink"><a href="#a958ce017088ad4eebbce2524cd614c6b">◆ </a></span>clone()</h2> <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="classicu_1_1CharacterIterator.html">CharacterIterator</a>* icu::CharacterIterator::clone </td> <td>(</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="classicu_1_1CharacterIterator.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. <br /> </p><dl class="section return"><dt>Returns</dt><dd>a pointer to a new <a class="el" href="classicu_1_1CharacterIterator.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#_stable000164">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a72e698e06943dbf8d69fcfbb4f6cd012">icu::UCharCharacterIterator</a>, and <a class="el" href="classicu_1_1StringCharacterIterator.html#a1c5a485c9e5adf1a880636af30a34549">icu::StringCharacterIterator</a>.</p> </div> </div> <a id="a6f0c6d250baad1dba12469b076204259"></a> <h2 class="memtitle"><span class="permalink"><a href="#a6f0c6d250baad1dba12469b076204259">◆ </a></span>current()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::current </td> <td>(</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#_stable000175">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#ab9dfec753c2412578734abac8a3f6eff">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="ab9eb66bc8c1e7bb4f586201456959757"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab9eb66bc8c1e7bb4f586201456959757">◆ </a></span>current32()</h2> <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> icu::CharacterIterator::current32 </td> <td>(</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#_stable000176">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#aa5389c3f4e1227b664bebe5ba95225b3">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a73e20de1c8748f4689fbb7c32b7e8b34"></a> <h2 class="memtitle"><span class="permalink"><a href="#a73e20de1c8748f4689fbb7c32b7e8b34">◆ </a></span>endIndex()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::CharacterIterator::endIndex </td> <td>(</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="classicu_1_1CharacterIterator.html#a229f7148e8828f4a36df8f8c89e633a5" 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="classicu_1_1CharacterIterator.html#a229f7148e8828f4a36df8f8c89e633a5" 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#_stable000183">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00716">716</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <a id="ad6319289e81edc4bacce680a192011e9"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad6319289e81edc4bacce680a192011e9">◆ </a></span>first()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::first </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>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="classicu_1_1CharacterIterator.html#a427d140fc143060f11921138b7eca0e9" 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#_stable000165">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a55d1475b2702adbc6776cf74b344ac0d">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a413e8cf1aefcfbbeeda0b234a9d27d51"></a> <h2 class="memtitle"><span class="permalink"><a href="#a413e8cf1aefcfbbeeda0b234a9d27d51">◆ </a></span>first32()</h2> <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> icu::CharacterIterator::first32 </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>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="classicu_1_1CharacterIterator.html#a9d79153b5c18925aa05fadafbf193665" 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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651" 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="classicu_1_1CharacterIterator.html#ac6e8c16981c7481256c50ab7145185aa" 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="classicu_1_1CharacterIterator.html#a022ba099b591b768bcbf294a8377cba8" 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#_stable000167">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a45757f30827180c6ae4460ba3828d323">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="ab6c39b924b47c6433ac274aa603651df"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab6c39b924b47c6433ac274aa603651df">◆ </a></span>first32PostInc()</h2> <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> icu::CharacterIterator::first32PostInc </td> <td>(</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="classicu_1_1CharacterIterator.html#ac6e8c16981c7481256c50ab7145185aa" 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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651" 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#_stable000168">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Reimplemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#acb99d06787f14b2886b9888a5c83004b">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a022ba099b591b768bcbf294a8377cba8"></a> <h2 class="memtitle"><span class="permalink"><a href="#a022ba099b591b768bcbf294a8377cba8">◆ </a></span>firstPostInc()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::firstPostInc </td> <td>(</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="classicu_1_1CharacterIterator.html#ac6e8c16981c7481256c50ab7145185aa" 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="classicu_1_1ForwardCharacterIterator.html#ae8afa480f9b5ed1f7d02e9ac7f282570" 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#_stable000166">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Reimplemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a8dfbd50ca007f1db14993fef64203c61">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="ab0b409a0d3672619011b2a3655fbb8a4"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab0b409a0d3672619011b2a3655fbb8a4">◆ </a></span>getIndex()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::CharacterIterator::getIndex </td> <td>(</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="classicu_1_1CharacterIterator.html#a6f0c6d250baad1dba12469b076204259" title="Returns the code unit the iterator currently refers to. ">current()</a>). </p> <dl class="section return"><dt>Returns</dt><dd>the numeric 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#_stable000184">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00721">721</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <a id="af5697904edc5252ec6c7f6f69a7566bd"></a> <h2 class="memtitle"><span class="permalink"><a href="#af5697904edc5252ec6c7f6f69a7566bd">◆ </a></span>getLength()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::CharacterIterator::getLength </td> <td>(</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#_stable000185">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00726">726</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <a id="a2a71011a2d6f91c7f4ca2c1a2fe6fc7f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2a71011a2d6f91c7f4ca2c1a2fe6fc7f">◆ </a></span>getText()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void icu::CharacterIterator::getText </td> <td>(</td> <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.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="classicu_1_1UnicodeString.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. <br /> </td></tr> </table> </dd> </dl> <dl class="stable"><dt><b><a class="el" href="stable.html#_stable000188">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a8511c826499925ee0104f76f4bb7ce06">icu::UCharCharacterIterator</a>, and <a class="el" href="classicu_1_1StringCharacterIterator.html#ac5dfd3eee5ac5f98870509ba024592a8">icu::StringCharacterIterator</a>.</p> </div> </div> <a id="ac83ac180f319b25a9e6ab1a80d66d928"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac83ac180f319b25a9e6ab1a80d66d928">◆ </a></span>hasPrevious()</h2> <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> icu::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="classicu_1_1CharacterIterator.html#ad35d0bdd91c91aabb8a51bdb7ce98dd9" title="Advances to the previous code unit in the iteration range (toward startIndex()), and returns that cod...">previous()</a> or <a class="el" href="classicu_1_1CharacterIterator.html#a20742fb6f9b85d4520730768edc229ab" 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#_stable000181">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#ac1ac3b6078afb070c0a449e388c59d6e">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a229f7148e8828f4a36df8f8c89e633a5"></a> <h2 class="memtitle"><span class="permalink"><a href="#a229f7148e8828f4a36df8f8c89e633a5">◆ </a></span>last()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::last </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>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="classicu_1_1CharacterIterator.html#ad35d0bdd91c91aabb8a51bdb7ce98dd9" 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#_stable000170">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a3cd652c41760133817b2cf320ae9f737">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a53e8ec6b96b5fe6fa0c70609c640eafd"></a> <h2 class="memtitle"><span class="permalink"><a href="#a53e8ec6b96b5fe6fa0c70609c640eafd">◆ </a></span>last32()</h2> <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> icu::CharacterIterator::last32 </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>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="classicu_1_1CharacterIterator.html#a20742fb6f9b85d4520730768edc229ab" 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#_stable000171">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a4e43cd0b5e975b72273ec209b22b0bef">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a37e9b91a0bd0e9dde2761b603560da9d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a37e9b91a0bd0e9dde2761b603560da9d">◆ </a></span>move()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual int32_t icu::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="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">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#_stable000186">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a125fbe05e41a75b19169c14fb81c047c">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="aac9a417f50cd4d741da7fac3429dad0d"></a> <h2 class="memtitle"><span class="permalink"><a href="#aac9a417f50cd4d741da7fac3429dad0d">◆ </a></span>move32()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual int32_t icu::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="classicu_1_1CharacterIterator.html#a065aff1d713f7659faba4951d16f5f38">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#_stable000187">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a6eab368600af357d14e0e995078176f0">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a427d140fc143060f11921138b7eca0e9"></a> <h2 class="memtitle"><span class="permalink"><a href="#a427d140fc143060f11921138b7eca0e9">◆ </a></span>next()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::next </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>Advances to the next code unit in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#a73e20de1c8748f4689fbb7c32b7e8b34" 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#_stable000177">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a25b968da08277427cfd22070deb6353b">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a9d79153b5c18925aa05fadafbf193665"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9d79153b5c18925aa05fadafbf193665">◆ </a></span>next32()</h2> <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> icu::CharacterIterator::next32 </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>Advances to the next code point in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#a73e20de1c8748f4689fbb7c32b7e8b34" 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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651" 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#_stable000178">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a6fca381cc8f0e3dcf89e7eba085e8a28">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="af3fd5df0081fd8fccffdd4f1bd8a8811"></a> <h2 class="memtitle"><span class="permalink"><a href="#af3fd5df0081fd8fccffdd4f1bd8a8811">◆ </a></span>operator=()</h2> <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="classicu_1_1CharacterIterator.html">CharacterIterator</a>& icu::CharacterIterator::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classicu_1_1CharacterIterator.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="classicu_1_1CharacterIterator.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="classicu_1_1CharacterIterator.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="classicu_1_1CharacterIterator.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#_stable000194">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div> <a id="ad35d0bdd91c91aabb8a51bdb7ce98dd9"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad35d0bdd91c91aabb8a51bdb7ce98dd9">◆ </a></span>previous()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::CharacterIterator::previous </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>Advances to the previous code unit in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#af513ad27eb8e98714b863834c687ce22" 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. <br /> </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#_stable000179">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a578fd08ea22fe7dd86c4087c8ac96c63">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a20742fb6f9b85d4520730768edc229ab"></a> <h2 class="memtitle"><span class="permalink"><a href="#a20742fb6f9b85d4520730768edc229ab">◆ </a></span>previous32()</h2> <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> icu::CharacterIterator::previous32 </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>Advances to the previous code point in the iteration range (toward <a class="el" href="classicu_1_1CharacterIterator.html#af513ad27eb8e98714b863834c687ce22" 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#_stable000180">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a28c0c22e15ec821e89034dc8ea7b3d28">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="ade1384a90f7290121ac40f851aac4f82"></a> <h2 class="memtitle"><span class="permalink"><a href="#ade1384a90f7290121ac40f851aac4f82">◆ </a></span>setIndex()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual char16_t icu::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#_stable000173">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#af887d6098b8dc9308677c36f4ea7ac7c">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="a8519987104888e1af043b146971b6793"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8519987104888e1af043b146971b6793">◆ </a></span>setIndex32()</h2> <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> icu::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#_stable000174">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p>Implemented in <a class="el" href="classicu_1_1UCharCharacterIterator.html#a3a42877b3fb105eae0c85db7be9cdf54">icu::UCharCharacterIterator</a>.</p> </div> </div> <a id="ac5cff21d4826f4f655303de8fecb5ce5"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac5cff21d4826f4f655303de8fecb5ce5">◆ </a></span>setToEnd()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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="classicu_1_1CharacterIterator.html#ad35d0bdd91c91aabb8a51bdb7ce98dd9" title="Advances to the previous code unit in the iteration range (toward startIndex()), and returns that cod...">previous()</a> or <a class="el" href="classicu_1_1CharacterIterator.html#a20742fb6f9b85d4520730768edc229ab" 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#_stable000172">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">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> </div> </div> <a id="ac6e8c16981c7481256c50ab7145185aa"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac6e8c16981c7481256c50ab7145185aa">◆ </a></span>setToStart()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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="classicu_1_1ForwardCharacterIterator.html#ae8afa480f9b5ed1f7d02e9ac7f282570" 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="classicu_1_1ForwardCharacterIterator.html#a1c7acabb45b08b15c35c188b95ede651" 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#_stable000169">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">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> </div> </div> <a id="af513ad27eb8e98714b863834c687ce22"></a> <h2 class="memtitle"><span class="permalink"><a href="#af513ad27eb8e98714b863834c687ce22">◆ </a></span>startIndex()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::CharacterIterator::startIndex </td> <td>(</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="classicu_1_1CharacterIterator.html#ad6319289e81edc4bacce680a192011e9" 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. <br /> </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="classicu_1_1CharacterIterator.html#ad6319289e81edc4bacce680a192011e9" 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#_stable000182">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">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> </div> </div> <h2 class="groupheader">Field Documentation</h2> <a id="a8a08a04f80fc138a3dee27915412bdec"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8a08a04f80fc138a3dee27915412bdec">◆ </a></span>begin</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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#_stable000197">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">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> </div> </div> <a id="aa3722479f3191d6bcad48a24bd6c8f3e"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa3722479f3191d6bcad48a24bd6c8f3e">◆ </a></span>end</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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#_stable000198">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00692">692</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <a id="a974c6d9bbf0ae1a74688ffdbfc08ad17"></a> <h2 class="memtitle"><span class="permalink"><a href="#a974c6d9bbf0ae1a74688ffdbfc08ad17">◆ </a></span>pos</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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#_stable000196">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00680">680</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <a id="a089ec2c9e1cbe7b6b170723c38fd2e55"></a> <h2 class="memtitle"><span class="permalink"><a href="#a089ec2c9e1cbe7b6b170723c38fd2e55">◆ </a></span>textLength</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int32_t icu::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="classicu_1_1CharacterIterator.html#a2a71011a2d6f91c7f4ca2c1a2fe6fc7f" title="Copies the text under iteration into the UnicodeString referred to by "result". ">getText()</a> and <a class="el" href="classicu_1_1ForwardCharacterIterator.html#a37f9482beea6eeb5bcaffc15adc0fb78" title="Generates a hash code for this iterator. ">hashCode()</a>. </p><dl class="stable"><dt><b><a class="el" href="stable.html#_stable000195">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p class="definition">Definition at line <a class="el" href="chariter_8h_source.html#l00674">674</a> of file <a class="el" href="chariter_8h_source.html">chariter.h</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>common/unicode/<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.14 </small></address> </body> </html>
| ver. 1.6 |
Github
|
.
| PHP 8.3.30 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка