| Linux in-mum-web1499.main-hosting.eu 5.14.0-503.40.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Mon May 5 06:06:04 EDT 2025 x86_64 Path : /opt/alt/alt-nodejs18/root/usr/share/doc/alt-nodejs18-libicu-doc/ |
| Current File : //opt/alt/alt-nodejs18/root/usr/share/doc/alt-nodejs18-libicu-doc/classCaseMap.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ICU 74.2: icu::CaseMap 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="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 74.2
 <span id="projectnumber">74.2</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<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('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></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_1CaseMap.html">CaseMap</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">icu::CaseMap Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Low-level C++ case mapping functions.
<a href="classicu_1_1CaseMap.html#details">More...</a></p>
<p><code>#include <<a class="el" href="casemap_8h_source.html">casemap.h</a>></code></p>
<div class="dynheader">
Inheritance diagram for icu::CaseMap:</div>
<div class="dyncontent">
<div class="center">
<img src="classicu_1_1CaseMap.png" usemap="#icu::CaseMap_map" alt=""/>
<map id="icu::CaseMap_map" name="icu::CaseMap_map">
<area href="classicu_1_1UMemory.html" title="UMemory is the common ICU base class." alt="icu::UMemory" shape="rect" coords="0,0,89,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a23dd4c2571085dd742d7f0d85168c8c9"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a23dd4c2571085dd742d7f0d85168c8c9">toLower</a> (const char *locale, uint32_t options, const char16_t *src, int32_t srcLength, char16_t *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a23dd4c2571085dd742d7f0d85168c8c9"><td class="mdescLeft"> </td><td class="mdescRight">Lowercases a UTF-16 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a23dd4c2571085dd742d7f0d85168c8c9">More...</a><br /></td></tr>
<tr class="separator:a23dd4c2571085dd742d7f0d85168c8c9"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae7ee3481372cc28ed5b21bdedffd7504"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#ae7ee3481372cc28ed5b21bdedffd7504">toUpper</a> (const char *locale, uint32_t options, const char16_t *src, int32_t srcLength, char16_t *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:ae7ee3481372cc28ed5b21bdedffd7504"><td class="mdescLeft"> </td><td class="mdescRight">Uppercases a UTF-16 string and optionally records edits. <a href="classicu_1_1CaseMap.html#ae7ee3481372cc28ed5b21bdedffd7504">More...</a><br /></td></tr>
<tr class="separator:ae7ee3481372cc28ed5b21bdedffd7504"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1d8bb99f451154bc828436e335eae05d"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a1d8bb99f451154bc828436e335eae05d">toTitle</a> (const char *locale, uint32_t options, <a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> *iter, const char16_t *src, int32_t srcLength, char16_t *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a1d8bb99f451154bc828436e335eae05d"><td class="mdescLeft"> </td><td class="mdescRight">Titlecases a UTF-16 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a1d8bb99f451154bc828436e335eae05d">More...</a><br /></td></tr>
<tr class="separator:a1d8bb99f451154bc828436e335eae05d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7e8ab3d9bd8708dd411f7f713baac542"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a7e8ab3d9bd8708dd411f7f713baac542">fold</a> (uint32_t options, const char16_t *src, int32_t srcLength, char16_t *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a7e8ab3d9bd8708dd411f7f713baac542"><td class="mdescLeft"> </td><td class="mdescRight">Case-folds a UTF-16 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a7e8ab3d9bd8708dd411f7f713baac542">More...</a><br /></td></tr>
<tr class="separator:a7e8ab3d9bd8708dd411f7f713baac542"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:acf6884326403e639dfa09490cf2ba297"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#acf6884326403e639dfa09490cf2ba297">utf8ToLower</a> (const char *locale, uint32_t options, <a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> src, <a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> &sink, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:acf6884326403e639dfa09490cf2ba297"><td class="mdescLeft"> </td><td class="mdescRight">Lowercases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#acf6884326403e639dfa09490cf2ba297">More...</a><br /></td></tr>
<tr class="separator:acf6884326403e639dfa09490cf2ba297"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2bf0089d7b2f39c2f1eef20e6a1df603"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a2bf0089d7b2f39c2f1eef20e6a1df603">utf8ToUpper</a> (const char *locale, uint32_t options, <a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> src, <a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> &sink, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a2bf0089d7b2f39c2f1eef20e6a1df603"><td class="mdescLeft"> </td><td class="mdescRight">Uppercases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a2bf0089d7b2f39c2f1eef20e6a1df603">More...</a><br /></td></tr>
<tr class="separator:a2bf0089d7b2f39c2f1eef20e6a1df603"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4b0032cf5353f803a50acf1a8ed4c278"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a4b0032cf5353f803a50acf1a8ed4c278">utf8ToTitle</a> (const char *locale, uint32_t options, <a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> *iter, <a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> src, <a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> &sink, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a4b0032cf5353f803a50acf1a8ed4c278"><td class="mdescLeft"> </td><td class="mdescRight">Titlecases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a4b0032cf5353f803a50acf1a8ed4c278">More...</a><br /></td></tr>
<tr class="separator:a4b0032cf5353f803a50acf1a8ed4c278"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:afe91df74063b07214a41fe93256927f7"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#afe91df74063b07214a41fe93256927f7">utf8Fold</a> (uint32_t options, <a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> src, <a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> &sink, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:afe91df74063b07214a41fe93256927f7"><td class="mdescLeft"> </td><td class="mdescRight">Case-folds a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#afe91df74063b07214a41fe93256927f7">More...</a><br /></td></tr>
<tr class="separator:afe91df74063b07214a41fe93256927f7"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a819030055769a907b1fbfc0d744a27ca"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a819030055769a907b1fbfc0d744a27ca">utf8ToLower</a> (const char *locale, uint32_t options, const char *src, int32_t srcLength, char *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a819030055769a907b1fbfc0d744a27ca"><td class="mdescLeft"> </td><td class="mdescRight">Lowercases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a819030055769a907b1fbfc0d744a27ca">More...</a><br /></td></tr>
<tr class="separator:a819030055769a907b1fbfc0d744a27ca"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a93cddfa5b28c19cad7edf61c4dd060d6"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a93cddfa5b28c19cad7edf61c4dd060d6">utf8ToUpper</a> (const char *locale, uint32_t options, const char *src, int32_t srcLength, char *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a93cddfa5b28c19cad7edf61c4dd060d6"><td class="mdescLeft"> </td><td class="mdescRight">Uppercases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a93cddfa5b28c19cad7edf61c4dd060d6">More...</a><br /></td></tr>
<tr class="separator:a93cddfa5b28c19cad7edf61c4dd060d6"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a481a489aac6f9ab396f0b7dbf0613564"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a481a489aac6f9ab396f0b7dbf0613564">utf8ToTitle</a> (const char *locale, uint32_t options, <a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> *iter, const char *src, int32_t srcLength, char *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a481a489aac6f9ab396f0b7dbf0613564"><td class="mdescLeft"> </td><td class="mdescRight">Titlecases a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a481a489aac6f9ab396f0b7dbf0613564">More...</a><br /></td></tr>
<tr class="separator:a481a489aac6f9ab396f0b7dbf0613564"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a142feb0ba4e2aca8c88e5932352a7b6d"><td class="memItemLeft" align="right" valign="top">static int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1CaseMap.html#a142feb0ba4e2aca8c88e5932352a7b6d">utf8Fold</a> (uint32_t options, const char *src, int32_t srcLength, char *dest, int32_t destCapacity, <a class="el" href="classicu_1_1Edits.html">Edits</a> *edits, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &errorCode)</td></tr>
<tr class="memdesc:a142feb0ba4e2aca8c88e5932352a7b6d"><td class="mdescLeft"> </td><td class="mdescRight">Case-folds a UTF-8 string and optionally records edits. <a href="classicu_1_1CaseMap.html#a142feb0ba4e2aca8c88e5932352a7b6d">More...</a><br /></td></tr>
<tr class="separator:a142feb0ba4e2aca8c88e5932352a7b6d"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Low-level C++ case mapping functions. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000115">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
<p class="definition">Definition at line <a class="el" href="casemap_8h_source.html#l00033">33</a> of file <a class="el" href="casemap_8h_source.html">casemap.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a7e8ab3d9bd8708dd411f7f713baac542"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e8ab3d9bd8708dd411f7f713baac542">◆ </a></span>fold()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::fold </td>
<td>(</td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char16_t * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char16_t * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Case-folds a UTF-16 string and optionally records edits. </p>
<p>Case folding is locale-independent and not context-sensitive, but there is an option for whether to include or exclude mappings for dotted I and dotless i that are marked with 'T' in CaseFolding.txt.</p>
<p>The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET, U_FOLD_CASE_DEFAULT, U_FOLD_CASE_EXCLUDE_SPECIAL_I. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of char16_ts). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ustring_8h.html#ae514cad63c76897567f1d7535e857852" title="Case-folds the characters in a string.">u_strFoldCase</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000119">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="a23dd4c2571085dd742d7f0d85168c8c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23dd4c2571085dd742d7f0d85168c8c9">◆ </a></span>toLower()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::toLower </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char16_t * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char16_t * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Lowercases a UTF-16 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of char16_ts). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ustring_8h.html#a1b516af424a82c73421754e63306b4b6" title="Lowercase the characters in a string.">u_strToLower</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000116">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="a1d8bb99f451154bc828436e335eae05d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d8bb99f451154bc828436e335eae05d">◆ </a></span>toTitle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::toTitle </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> * </td>
<td class="paramname"><em>iter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char16_t * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char16_t * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Titlecases a UTF-16 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<p>Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others. (This can be modified with options bits.)</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET, U_TITLECASE_NO_LOWERCASE, U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED, U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES. </td></tr>
<tr><td class="paramname">iter</td><td>A break iterator to find the first characters of words that are to be titlecased. It is set to the source string (setText()) and used one or more times for iteration (first() and next()). If nullptr, then a word break iterator for the locale is used (or something equivalent). </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of char16_ts). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ustring_8h.html#a47602e2c2012d77ee91908b9bbfdc063" title="Titlecase a string.">u_strToTitle</a> </dd>
<dd>
<a class="el" href="ucasemap_8h.html#aa49d8b403bd91c52f127fe80679bac11" title="Titlecase a UTF-16 string.">ucasemap_toTitle</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000118">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="ae7ee3481372cc28ed5b21bdedffd7504"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7ee3481372cc28ed5b21bdedffd7504">◆ </a></span>toUpper()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::toUpper </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char16_t * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char16_t * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Uppercases a UTF-16 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of char16_ts). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ustring_8h.html#aa64fbd4ad23af84d01c931d7cfa25f89" title="Uppercase the characters in a string.">u_strToUpper</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000117">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="a142feb0ba4e2aca8c88e5932352a7b6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a142feb0ba4e2aca8c88e5932352a7b6d">◆ </a></span>utf8Fold() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::utf8Fold </td>
<td>(</td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Case-folds a UTF-8 string and optionally records edits. </p>
<p>Case folding is locale-independent and not context-sensitive, but there is an option for whether to include or exclude mappings for dotted I and dotless i that are marked with 'T' in CaseFolding.txt.</p>
<p>The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET, U_FOLD_CASE_DEFAULT, U_FOLD_CASE_EXCLUDE_SPECIAL_I. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of bytes). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a243a148e64a479503c4044fd6e298768" title="Case-folds the characters in a UTF-8 string.">ucasemap_utf8FoldCase</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000127">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="afe91df74063b07214a41fe93256927f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe91df74063b07214a41fe93256927f7">◆ </a></span>utf8Fold() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void icu::CaseMap::utf8Fold </td>
<td>(</td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> & </td>
<td class="paramname"><em>sink</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Case-folds a UTF-8 string and optionally records edits. </p>
<p>Case folding is locale-independent and not context-sensitive, but there is an option for whether to include or exclude mappings for dotted I and dotless i that are marked with 'T' in CaseFolding.txt.</p>
<p>The result may be longer or shorter than the original.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">sink</td><td>A <a class="el" href="classicu_1_1ByteSink.html" title="A ByteSink can be filled with bytes.">ByteSink</a> to which the result string is written. sink.Flush() is called at the end. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a243a148e64a479503c4044fd6e298768" title="Case-folds the characters in a UTF-8 string.">ucasemap_utf8FoldCase</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000123">Stable:</a></b></dt><dd>ICU 60 </dd></dl>
</div>
</div>
<a id="a819030055769a907b1fbfc0d744a27ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a819030055769a907b1fbfc0d744a27ca">◆ </a></span>utf8ToLower() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::utf8ToLower </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Lowercases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of bytes). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a043b0308f87180761deda714eb48e9b3" title="Lowercase the characters in a UTF-8 string.">ucasemap_utf8ToLower</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000124">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="acf6884326403e639dfa09490cf2ba297"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf6884326403e639dfa09490cf2ba297">◆ </a></span>utf8ToLower() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void icu::CaseMap::utf8ToLower </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> & </td>
<td class="paramname"><em>sink</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Lowercases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">sink</td><td>A <a class="el" href="classicu_1_1ByteSink.html" title="A ByteSink can be filled with bytes.">ByteSink</a> to which the result string is written. sink.Flush() is called at the end. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a043b0308f87180761deda714eb48e9b3" title="Lowercase the characters in a UTF-8 string.">ucasemap_utf8ToLower</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000120">Stable:</a></b></dt><dd>ICU 60 </dd></dl>
</div>
</div>
<a id="a481a489aac6f9ab396f0b7dbf0613564"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a481a489aac6f9ab396f0b7dbf0613564">◆ </a></span>utf8ToTitle() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::utf8ToTitle </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> * </td>
<td class="paramname"><em>iter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Titlecases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<p>Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others. (This can be modified with options bits.)</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET, U_TITLECASE_NO_LOWERCASE, U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED, U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES. </td></tr>
<tr><td class="paramname">iter</td><td>A break iterator to find the first characters of words that are to be titlecased. It is set to the source string (setUText()) and used one or more times for iteration (first() and next()). If nullptr, then a word break iterator for the locale is used (or something equivalent). </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of bytes). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a6184d1a126b3d455a519418e0ee8ef7b" title="Titlecase a UTF-8 string.">ucasemap_utf8ToTitle</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000126">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="a4b0032cf5353f803a50acf1a8ed4c278"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b0032cf5353f803a50acf1a8ed4c278">◆ </a></span>utf8ToTitle() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void icu::CaseMap::utf8ToTitle </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1BreakIterator.html">BreakIterator</a> * </td>
<td class="paramname"><em>iter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> & </td>
<td class="paramname"><em>sink</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Titlecases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original.</p>
<p>Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others. (This can be modified with options bits.)</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT, U_EDITS_NO_RESET, U_TITLECASE_NO_LOWERCASE, U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED, U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES. </td></tr>
<tr><td class="paramname">iter</td><td>A break iterator to find the first characters of words that are to be titlecased. It is set to the source string (setUText()) and used one or more times for iteration (first() and next()). If nullptr, then a word break iterator for the locale is used (or something equivalent). </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">sink</td><td>A <a class="el" href="classicu_1_1ByteSink.html" title="A ByteSink can be filled with bytes.">ByteSink</a> to which the result string is written. sink.Flush() is called at the end. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a6184d1a126b3d455a519418e0ee8ef7b" title="Titlecase a UTF-8 string.">ucasemap_utf8ToTitle</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000122">Stable:</a></b></dt><dd>ICU 60 </dd></dl>
</div>
</div>
<a id="a93cddfa5b28c19cad7edf61c4dd060d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93cddfa5b28c19cad7edf61c4dd060d6">◆ </a></span>utf8ToUpper() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32_t icu::CaseMap::utf8ToUpper </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>srcLength</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char * </td>
<td class="paramname"><em>dest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t </td>
<td class="paramname"><em>destCapacity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Uppercases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original. The source string and the destination buffer must not overlap.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">srcLength</td><td>The length of the original string. If -1, then src must be NUL-terminated. </td></tr>
<tr><td class="paramname">dest</td><td>A buffer for the result string. The result will be NUL-terminated if the buffer is large enough. The contents is undefined in case of failure. </td></tr>
<tr><td class="paramname">destCapacity</td><td>The size of the buffer (number of bytes). If it is 0, then dest may be nullptr and the function will only return the length of the result without writing any of the result string. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The length of the result string, if successful. When the result would be longer than destCapacity, the full length is returned and a U_BUFFER_OVERFLOW_ERROR is set.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a2ab9b569e7a51ce1effd51fe81939ed3" title="Uppercase the characters in a UTF-8 string.">ucasemap_utf8ToUpper</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000125">Stable:</a></b></dt><dd>ICU 59 </dd></dl>
</div>
</div>
<a id="a2bf0089d7b2f39c2f1eef20e6a1df603"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bf0089d7b2f39c2f1eef20e6a1df603">◆ </a></span>utf8ToUpper() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void icu::CaseMap::utf8ToUpper </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>locale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t </td>
<td class="paramname"><em>options</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1StringPiece.html">StringPiece</a> </td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1ByteSink.html">ByteSink</a> & </td>
<td class="paramname"><em>sink</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classicu_1_1Edits.html">Edits</a> * </td>
<td class="paramname"><em>edits</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> & </td>
<td class="paramname"><em>errorCode</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Uppercases a UTF-8 string and optionally records edits. </p>
<p>Casing is locale-dependent and context-sensitive. The result may be longer or shorter than the original.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">locale</td><td>The locale ID. ("" = root locale, nullptr = default locale.) </td></tr>
<tr><td class="paramname">options</td><td>Options bit set, usually 0. See U_OMIT_UNCHANGED_TEXT and U_EDITS_NO_RESET. </td></tr>
<tr><td class="paramname">src</td><td>The original string. </td></tr>
<tr><td class="paramname">sink</td><td>A <a class="el" href="classicu_1_1ByteSink.html" title="A ByteSink can be filled with bytes.">ByteSink</a> to which the result string is written. sink.Flush() is called at the end. </td></tr>
<tr><td class="paramname">edits</td><td>Records edits for index mapping, working with styled text, and getting only changes (if any). The <a class="el" href="classicu_1_1Edits.html" title="Records lengths of string edits but not replacement text.">Edits</a> contents is undefined if any error occurs. This function calls edits->reset() first unless options includes U_EDITS_NO_RESET. edits can be nullptr. </td></tr>
<tr><td class="paramname">errorCode</td><td>Reference to an in/out error code value which must not indicate a failure before the function call.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="ucasemap_8h.html#a2ab9b569e7a51ce1effd51fe81939ed3" title="Uppercase the characters in a UTF-8 string.">ucasemap_utf8ToUpper</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable000121">Stable:</a></b></dt><dd>ICU 60 </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>common/unicode/<a class="el" href="casemap_8h_source.html">casemap.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>