Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > 280da2a01a3d16776505ea3f476de84f > files > 482

icu-doc-3.8.1-2mdv2008.1.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ICU 3.8: uset.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.1 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
    <li id="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<h1>uset.h File Reference</h1>C API: Unicode Set. <a href="#_details">More...</a>
<p>
<code>#include &quot;<a class="el" href="utypes_8h-source.html">unicode/utypes.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="uchar_8h-source.html">unicode/uchar.h</a>&quot;</code><br>

<p>
<a href="uset_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structUSerializedSet.html">USerializedSet</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A serialized form of a Unicode set.  <a href="structUSerializedSet.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A <a class="el" href="classUnicodeSet.html">UnicodeSet</a>.  <a href="#dce3fef7c15d7c78196bf977ac96ec9c"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="uset_8h.html#b04a0655cd1e3bcac5e8f48c18df1a570273be77d90674cbb82a37f9edb504ff">USET_IGNORE_SPACE</a> =  1, 
<a class="el" href="uset_8h.html#b04a0655cd1e3bcac5e8f48c18df1a57740685a55f610ca84868b60aef83db7b">USET_CASE_INSENSITIVE</a> =  2, 
<a class="el" href="uset_8h.html#b04a0655cd1e3bcac5e8f48c18df1a5768133c690985f92d95996e4cf9abd80d">USET_ADD_CASE_MAPPINGS</a> =  4, 
<a class="el" href="uset_8h.html#b04a0655cd1e3bcac5e8f48c18df1a57755814d28a97e9ab24a450e008644d81">USET_SERIALIZED_STATIC_ARRAY_CAPACITY</a> = 8
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bitmask values to be passed to <a class="el" href="uset_8h.html#34a8914b62d0de444d7a2e7981eb343a">uset_openPatternOptions()</a> or <a class="el" href="uset_8h.html#c934accbf4a12c2f8b13a86ffab4c22c">uset_applyPattern()</a> taking an option parameter.  <a href="uset_8h.html#b04a0655cd1e3bcac5e8f48c18df1a57">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> { <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b402c1d43f074e8153eddaa79eb74d80f4">USET_SPAN_NOT_CONTAINED</a> =  0, 
<a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b40a731ae6bad64429eeb153b8704e4d40">USET_SPAN_CONTAINED</a> =  1, 
<a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b479e5e08a799906f1de00a58f189a3f3a">USET_SPAN_SIMPLE</a> =  2, 
<a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b46b1ad879b4752df1122a027e528a89d0">USET_SPAN_CONDITION_COUNT</a>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Argument values for whether span() and similar functions continue while the current character is contained vs.  <a href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#65a4e226273821916545e45dee27a144">uset_open</a> (<a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a USet object that contains the range of characters start.  <a href="#65a4e226273821916545e45dee27a144"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#b8b79fbe81d1245c15ee17a64c4513b3">uset_openPattern</a> (const UChar *pattern, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> patternLength, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a set from the given pattern.  <a href="#b8b79fbe81d1245c15ee17a64c4513b3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#34a8914b62d0de444d7a2e7981eb343a">uset_openPatternOptions</a> (const UChar *pattern, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> patternLength, <a class="el" href="pwin32_8h.html#435d1572bf3f880d55459d9805097f62">uint32_t</a> options, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a set from the given pattern.  <a href="#34a8914b62d0de444d7a2e7981eb343a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#bb0d0fb8d660204fd7fef7fe920bb70c">uset_close</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Disposes of the storage used by a USet object.  <a href="#bb0d0fb8d660204fd7fef7fe920bb70c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#1965f27413bb1fee1cc03bdfb061148e">uset_clone</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a copy of this object.  <a href="#1965f27413bb1fee1cc03bdfb061148e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#c56a97260c2b1092381111b5004c9e40">uset_isFrozen</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines whether the set has been frozen (made immutable) or not.  <a href="#c56a97260c2b1092381111b5004c9e40"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#851fc7d7e6920ff73fb9529d75aba387">uset_freeze</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Freeze the set (make it immutable).  <a href="#851fc7d7e6920ff73fb9529d75aba387"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#6b84cdeb472adde6bfa8b7ea7f33f0d4">uset_cloneAsThawed</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clone the set and make the clone mutable.  <a href="#6b84cdeb472adde6bfa8b7ea7f33f0d4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#171f42b2a952b070101378748e72b9bb">uset_set</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Causes the USet object to represent the range <code>start - end</code>.  <a href="#171f42b2a952b070101378748e72b9bb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#c934accbf4a12c2f8b13a86ffab4c22c">uset_applyPattern</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *pattern, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> patternLength, <a class="el" href="pwin32_8h.html#435d1572bf3f880d55459d9805097f62">uint32_t</a> options, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *status)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies the set to represent the set specified by the given pattern.  <a href="#c934accbf4a12c2f8b13a86ffab4c22c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#3c3fb05328c5f3f1d5c9d230e3ff150e">uset_applyIntPropertyValue</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="uchar_8h.html#e40d616419e74ecc7c80a9febab03199">UProperty</a> prop, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> value, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies the set to contain those code points which have the given value for the given binary or enumerated property, as returned by u_getIntPropertyValue.  <a href="#3c3fb05328c5f3f1d5c9d230e3ff150e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#6ea4197ee50887dde5eb6e9deb2f3442">uset_applyPropertyAlias</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *prop, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> propLength, const UChar *value, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> valueLength, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies the set to contain those code points which have the given value for the given property.  <a href="#6ea4197ee50887dde5eb6e9deb2f3442"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#319e09dd5e7c7987e177da7d31239ed2">uset_resemblesPattern</a> (const UChar *pattern, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> patternLength, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> pos)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return true if the given position, in the given pattern, appears to be the start of a <a class="el" href="classUnicodeSet.html">UnicodeSet</a> pattern.  <a href="#319e09dd5e7c7987e177da7d31239ed2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#dd59ca5626ba49504529174c7f47e4b3">uset_toPattern</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, UChar *result, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> resultCapacity, <a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a string representation of this set.  <a href="#dd59ca5626ba49504529174c7f47e4b3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#ceae4c9143329a4ad6f742f7e74ad6ce">uset_add</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the given character to the given USet.  <a href="#ceae4c9143329a4ad6f742f7e74ad6ce"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#cb550f469f833d41c14536ea11bf54be">uset_addAll</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *additionalSet)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds all of the elements in the specified set to this set if they're not already present.  <a href="#cb550f469f833d41c14536ea11bf54be"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#9c1050ab4e1056abd819d4fa3b46948d">uset_addRange</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the given range of characters to the given USet.  <a href="#9c1050ab4e1056abd819d4fa3b46948d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#f2917938713745c91c44b622c61ad01b">uset_addString</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strLen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the given string to the given USet.  <a href="#f2917938713745c91c44b622c61ad01b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#7a8489c50fd74324a4dc000bdceea49c">uset_addAllCodePoints</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strLen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds each of the characters in this string to the set.  <a href="#7a8489c50fd74324a4dc000bdceea49c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#fe44d95c8c0be1e4ce4399a4ee2f1f8f">uset_remove</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the given character from the given USet.  <a href="#fe44d95c8c0be1e4ce4399a4ee2f1f8f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#6b0fc0ae495d8aa755e2f42769e49b62">uset_removeRange</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the given range of characters from the given USet.  <a href="#6b0fc0ae495d8aa755e2f42769e49b62"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#ec1fe2c7d06a475d21fbf822fb42b825">uset_removeString</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strLen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the given string to the given USet.  <a href="#ec1fe2c7d06a475d21fbf822fb42b825"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#762f9d6a016dd5a59a9a6701255e5e96">uset_removeAll</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *removeSet)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes from this set all of its elements that are contained in the specified set.  <a href="#762f9d6a016dd5a59a9a6701255e5e96"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#49d1074ef9aeca26567d9a35ee0e97b9">uset_retain</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retain only the elements in this set that are contained in the specified range.  <a href="#49d1074ef9aeca26567d9a35ee0e97b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#6878a72dcd2249c49924ec98c922ba2e">uset_retainAll</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *retain)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retains only the elements in this set that are contained in the specified set.  <a href="#6878a72dcd2249c49924ec98c922ba2e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#cacac5438cd07fcfe5c4f52a561f36c2">uset_compact</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reallocate this objects internal structures to take up the least possible space, without changing this object's value.  <a href="#cacac5438cd07fcfe5c4f52a561f36c2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#648e93c5d2893cc65b0eb80f3162544e">uset_complement</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inverts this set.  <a href="#648e93c5d2893cc65b0eb80f3162544e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#e1d4b880a74aecc07039dfdfb40489c4">uset_complementAll</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *complement)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complements in this set all elements contained in the specified set.  <a href="#e1d4b880a74aecc07039dfdfb40489c4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#19fe69e5c9597433b6e63ff9d8497e4b">uset_clear</a> (<a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes all of the elements from this set.  <a href="#19fe69e5c9597433b6e63ff9d8497e4b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#42e3efc0c34ebeb18df64b4c38158fd7">uset_isEmpty</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns TRUE if the given USet contains no characters and no strings.  <a href="#42e3efc0c34ebeb18df64b4c38158fd7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#f8d9773ae28c70f253d1ba48ee4957f5">uset_contains</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns TRUE if the given USet contains the given character.  <a href="#f8d9773ae28c70f253d1ba48ee4957f5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#dab26ac0159e09e748869290be18bf2e">uset_containsRange</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns TRUE if the given USet contains all characters c where start &lt;= c &amp;&amp; c &lt;= end.  <a href="#dab26ac0159e09e748869290be18bf2e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#2e23614c8863a4cf606f55d38aecbe5e">uset_containsString</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strLen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns TRUE if the given USet contains the given string.  <a href="#2e23614c8863a4cf606f55d38aecbe5e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#902222c7bd584a91102b26c77842be50">uset_indexOf</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the index of the given character within this set, where the set is ordered by ascending code point.  <a href="#902222c7bd584a91102b26c77842be50"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#0de50c1284ddc7d64b7c2dc6fc39921f">uset_charAt</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> index)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the character at the given index within this set, where the set is ordered by ascending code point.  <a href="#0de50c1284ddc7d64b7c2dc6fc39921f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#83f6b0b79bbfa0a65248fb39f40e88dd">uset_size</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of characters and strings contained in the given USet.  <a href="#83f6b0b79bbfa0a65248fb39f40e88dd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#3d09ac37a8e0fbf5d38ef8281a3f4b3f">uset_getItemCount</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of items in this set.  <a href="#3d09ac37a8e0fbf5d38ef8281a3f4b3f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#1d9da52f345a1b4de5a933d8a3213070">uset_getItem</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> itemIndex, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *start, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *end, UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strCapacity, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *ec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns an item of this set.  <a href="#1d9da52f345a1b4de5a933d8a3213070"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#f55a5a2133c850561c6bd6f53e32a91c">uset_containsAll</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set1, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if set1 contains all the characters and strings of set2.  <a href="#f55a5a2133c850561c6bd6f53e32a91c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#db76bbc067c2d78c697a55b01d170674">uset_containsAllCodePoints</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *str, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> strLen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains all the characters of the given string.  <a href="#db76bbc067c2d78c697a55b01d170674"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#b1fd51712466a660f821f1ae4948e009">uset_containsNone</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set1, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if set1 contains none of the characters and strings of set2.  <a href="#b1fd51712466a660f821f1ae4948e009"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#e05a6aa4c5572219700ddb142a4e2a71">uset_containsSome</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set1, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if set1 contains some of the characters and strings of set2.  <a href="#e05a6aa4c5572219700ddb142a4e2a71"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#1c2ae031cbb8557b0106a571dfbdf038">uset_span</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *s, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> <a class="el" href="ucnv_8h.html#2b811fa5f6e9b580fa0122d38e9849b5">length</a>, <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#1c2ae031cbb8557b0106a571dfbdf038"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#8f38fd1f93c2908ff3bd9290a849c2f7">uset_spanBack</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const UChar *s, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> <a class="el" href="ucnv_8h.html#2b811fa5f6e9b580fa0122d38e9849b5">length</a>, <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#8f38fd1f93c2908ff3bd9290a849c2f7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#544f014d315c49f98c39aac7d4fe6a9a">uset_spanUTF8</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const char *s, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> <a class="el" href="ucnv_8h.html#2b811fa5f6e9b580fa0122d38e9849b5">length</a>, <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#544f014d315c49f98c39aac7d4fe6a9a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#f3533477f8a22a4988b625ecbb9df8cf">uset_spanBackUTF8</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, const char *s, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> <a class="el" href="ucnv_8h.html#2b811fa5f6e9b580fa0122d38e9849b5">length</a>, <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#f3533477f8a22a4988b625ecbb9df8cf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#027edbf3f81914abb7a703fb5b83bbcf">uset_equals</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set1, const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if set1 contains all of the characters and strings of set2, and vis versa.  <a href="#027edbf3f81914abb7a703fb5b83bbcf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#7b1d3c1676d23e1dce2b6532bdc00aed">uset_serialize</a> (const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *set, <a class="el" href="pwin32_8h.html#273cf69d639a59973b6019625df33e30">uint16_t</a> *dest, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> destCapacity, <a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *<a class="el" href="ucnv_8h.html#dbf2cd1916edd4b0144730376dc993f3">pErrorCode</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Serializes this set into an array of 16-bit integers.  <a href="#7b1d3c1676d23e1dce2b6532bdc00aed"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#ee4c3abbd48d9d899f6250d498a29168">uset_getSerializedSet</a> (<a class="el" href="structUSerializedSet.html">USerializedSet</a> *fillSet, const <a class="el" href="pwin32_8h.html#273cf69d639a59973b6019625df33e30">uint16_t</a> *src, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> srcLength)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Given a serialized array, fill in the given serialized set object.  <a href="#ee4c3abbd48d9d899f6250d498a29168"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#550b1efa4844dc9d745ca7c01836bb10">uset_setSerializedToOne</a> (<a class="el" href="structUSerializedSet.html">USerializedSet</a> *fillSet, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the <a class="el" href="structUSerializedSet.html">USerializedSet</a> to contain the given character (and nothing else).  <a href="#550b1efa4844dc9d745ca7c01836bb10"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#4a4f37a9684cfd16c1271ff6cbaf4ea6">uset_serializedContains</a> (const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *set, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns TRUE if the given <a class="el" href="structUSerializedSet.html">USerializedSet</a> contains the given character.  <a href="#4a4f37a9684cfd16c1271ff6cbaf4ea6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#4b09f3f07927c1fbae2b05cce3a22e4f">uset_getSerializedRangeCount</a> (const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of disjoint ranges of characters contained in the given serialized set.  <a href="#4b09f3f07927c1fbae2b05cce3a22e4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uset_8h.html#6a197df6a2d0d9cafc8561d6fab55148">uset_getSerializedRange</a> (const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *set, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> rangeIndex, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *pStart, <a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *pEnd)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a range of characters contained in the given serialized set.  <a href="#6a197df6a2d0d9cafc8561d6fab55148"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
C API: Unicode Set. 
<p>
This is a C wrapper around the C++ <a class="el" href="classUnicodeSet.html">UnicodeSet</a> class. 
<p>
Definition in file <a class="el" href="uset_8h-source.html">uset.h</a>.<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="dce3fef7c15d7c78196bf977ac96ec9c"></a><!-- doxytag: member="uset.h::USet" ref="dce3fef7c15d7c78196bf977ac96ec9c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A <a class="el" href="classUnicodeSet.html">UnicodeSet</a>. 
<p>
Use the uset_* API to manipulate. Create with uset_open*, and destroy with uset_close. <dl compact><dt><b><a class="el" href="stable.html#_stable001606">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>
Definition at line <a class="el" href="uset_8h-source.html#l00040">40</a> of file <a class="el" href="uset_8h-source.html">uset.h</a>.
</div>
</div><p>
<hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="b04a0655cd1e3bcac5e8f48c18df1a57"></a><!-- doxytag: member="uset.h::@9" ref="b04a0655cd1e3bcac5e8f48c18df1a57" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Bitmask values to be passed to <a class="el" href="uset_8h.html#34a8914b62d0de444d7a2e7981eb343a">uset_openPatternOptions()</a> or <a class="el" href="uset_8h.html#c934accbf4a12c2f8b13a86ffab4c22c">uset_applyPattern()</a> taking an option parameter. 
<p>
<dl compact><dt><b>Stable:</b></dt><dd>ICU 2.4 </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="b04a0655cd1e3bcac5e8f48c18df1a570273be77d90674cbb82a37f9edb504ff"></a><!-- doxytag: member="USET_IGNORE_SPACE" ref="b04a0655cd1e3bcac5e8f48c18df1a570273be77d90674cbb82a37f9edb504ff" args="" -->USET_IGNORE_SPACE</em>&nbsp;</td><td>
Ignore white space within patterns unless quoted or escaped. 
<p>
<dl compact><dt><b><a class="el" href="stable.html#_stable001654">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="b04a0655cd1e3bcac5e8f48c18df1a57740685a55f610ca84868b60aef83db7b"></a><!-- doxytag: member="USET_CASE_INSENSITIVE" ref="b04a0655cd1e3bcac5e8f48c18df1a57740685a55f610ca84868b60aef83db7b" args="" -->USET_CASE_INSENSITIVE</em>&nbsp;</td><td>
Enable case insensitive matching. 
<p>
E.g., "[ab]" with this flag will match 'a', 'A', 'b', and 'B'. "[^ab]" with this flag will match all except 'a', 'A', 'b', and 'B'. This performs a full closure over case mappings, e.g. U+017F for s.<p>
The resulting set is a superset of the input for the code points but not for the strings. It performs a case mapping closure of the code points and adds full case folding strings for the code points, and reduces strings of the original set to their full case folding equivalents.<p>
This is designed for case-insensitive matches, for example in regular expressions. The full code point case closure allows checking of an input character directly against the closure set. Strings are matched by comparing the case-folded form from the closure set with an incremental case folding of the string in question.<p>
The closure set will also contain single code points if the original set contained case-equivalent strings (like U+00DF for "ss" or "Ss" etc.). This is not necessary (that is, redundant) for the above matching method but results in the same closure sets regardless of whether the original set contained the code point or a string.<p>
<dl compact><dt><b><a class="el" href="stable.html#_stable001655">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="b04a0655cd1e3bcac5e8f48c18df1a5768133c690985f92d95996e4cf9abd80d"></a><!-- doxytag: member="USET_ADD_CASE_MAPPINGS" ref="b04a0655cd1e3bcac5e8f48c18df1a5768133c690985f92d95996e4cf9abd80d" args="" -->USET_ADD_CASE_MAPPINGS</em>&nbsp;</td><td>
Enable case insensitive matching. 
<p>
E.g., "[ab]" with this flag will match 'a', 'A', 'b', and 'B'. "[^ab]" with this flag will match all except 'a', 'A', 'b', and 'B'. This adds the lower-, title-, and uppercase mappings as well as the case folding of each existing element in the set. <dl compact><dt><b><a class="el" href="stable.html#_stable001656">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="b04a0655cd1e3bcac5e8f48c18df1a57755814d28a97e9ab24a450e008644d81"></a><!-- doxytag: member="USET_SERIALIZED_STATIC_ARRAY_CAPACITY" ref="b04a0655cd1e3bcac5e8f48c18df1a57755814d28a97e9ab24a450e008644d81" args="" -->USET_SERIALIZED_STATIC_ARRAY_CAPACITY</em>&nbsp;</td><td>
Enough for any single-code point set. 
<p>
<dl compact><dt><b><a class="el" href="internal.html#_internal000056">Internal:</a></b></dt><dd>Do not use. This API is for interal use only. </dd></dl>
</td></tr>
</table>
</dl>

<p>
Definition at line <a class="el" href="uset_8h-source.html#l00048">48</a> of file <a class="el" href="uset_8h-source.html">uset.h</a>.
</div>
</div><p>
<a class="anchor" name="5fc2e77dd6c8385e0e88fc6a7d72d9b4"></a><!-- doxytag: member="uset.h::USetSpanCondition" ref="5fc2e77dd6c8385e0e88fc6a7d72d9b4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Argument values for whether span() and similar functions continue while the current character is contained vs. 
<p>
not contained in the set.<p>
The functionality is straightforward for sets with only single code points, without strings (which is the common case):<ul>
<li>USET_SPAN_CONTAINED and USET_SPAN_SIMPLE work the same.</li><li>span() and spanBack() partition any string the same way when alternating between span(USET_SPAN_NOT_CONTAINED) and span(either "contained" condition).</li><li>Using a complemented (inverted) set and the opposite span conditions yields the same results.</li></ul>
<p>
When a set contains multi-code point strings, then these statements may not be true, depending on the strings in the set (for example, whether they overlap with each other) and the string that is processed. For a set with strings:<ul>
<li>The complement of the set contains the opposite set of code points, but the same set of strings. Therefore, complementing both the set and the span conditions may yield different results.</li><li>When starting spans at different positions in a string (span(s, ...) vs. span(s+1, ...)) the ends of the spans may be different because a set string may start before the later position.</li><li>span(USET_SPAN_SIMPLE) may be shorter than span(USET_SPAN_CONTAINED) because it will not recursively try all possible paths. For example, with a set which contains the three strings "xy", "xya" and "ax", span("xyax", USET_SPAN_CONTAINED) will return 4 but span("xyax", USET_SPAN_SIMPLE) will return 3. span(USET_SPAN_SIMPLE) will never be longer than span(USET_SPAN_CONTAINED).</li><li>With either "contained" condition, span() and spanBack() may partition a string in different ways. For example, with a set which contains the two strings "ab" and "ba", and when processing the string "aba", span() will yield contained/not-contained boundaries of { 0, 2, 3 } while spanBack() will yield boundaries of { 0, 1, 3 }.</li></ul>
<p>
Note: If it is important to get the same boundaries whether iterating forward or backward through a string, then either only span() should be used and the boundaries cached for backward operation, or an ICU <a class="el" href="classBreakIterator.html">BreakIterator</a> could be used.<p>
Note: Unpaired surrogates are treated like surrogate code points. Similarly, set strings match only on code point boundaries, never in the middle of a surrogate pair. Illegal UTF-8 sequences are treated like U+FFFD. When processing UTF-8 strings, malformed set strings (strings with unpaired surrogates which cannot be converted to UTF-8) are ignored.<p>
<dl compact><dt><b><a class="el" href="draft.html#_draft000017">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="5fc2e77dd6c8385e0e88fc6a7d72d9b402c1d43f074e8153eddaa79eb74d80f4"></a><!-- doxytag: member="USET_SPAN_NOT_CONTAINED" ref="5fc2e77dd6c8385e0e88fc6a7d72d9b402c1d43f074e8153eddaa79eb74d80f4" args="" -->USET_SPAN_NOT_CONTAINED</em>&nbsp;</td><td>
Continue a span() while there is no set element at the current position. 
<p>
Stops before the first set element (character or string). (For code points only, this is like while contains(current)==FALSE).<p>
When span() returns, the substring between where it started and the position it returned consists only of characters that are not in the set, and none of its strings overlap with the span.<p>
<dl compact><dt><b><a class="el" href="draft.html#_draft000026">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="5fc2e77dd6c8385e0e88fc6a7d72d9b40a731ae6bad64429eeb153b8704e4d40"></a><!-- doxytag: member="USET_SPAN_CONTAINED" ref="5fc2e77dd6c8385e0e88fc6a7d72d9b40a731ae6bad64429eeb153b8704e4d40" args="" -->USET_SPAN_CONTAINED</em>&nbsp;</td><td>
Continue a span() while there is a set element at the current position. 
<p>
(For characters only, this is like while contains(current)==TRUE).<p>
When span() returns, the substring between where it started and the position it returned consists only of set elements (characters or strings) that are in the set.<p>
If a set contains strings, then the span will be the longest substring matching any of the possible concatenations of set elements (characters or strings). (There must be a single, non-overlapping concatenation of characters or strings.) This is equivalent to a POSIX regular expression for (OR of each set element)*.<p>
<dl compact><dt><b><a class="el" href="draft.html#_draft000027">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="5fc2e77dd6c8385e0e88fc6a7d72d9b479e5e08a799906f1de00a58f189a3f3a"></a><!-- doxytag: member="USET_SPAN_SIMPLE" ref="5fc2e77dd6c8385e0e88fc6a7d72d9b479e5e08a799906f1de00a58f189a3f3a" args="" -->USET_SPAN_SIMPLE</em>&nbsp;</td><td>
Continue a span() while there is a set element at the current position. 
<p>
(For characters only, this is like while contains(current)==TRUE).<p>
When span() returns, the substring between where it started and the position it returned consists only of set elements (characters or strings) that are in the set.<p>
If a set only contains single characters, then this is the same as USET_SPAN_CONTAINED.<p>
If a set contains strings, then the span will be the longest substring with a match at each position with the longest single set element (character or string).<p>
Use this span condition together with other longest-match algorithms, such as ICU converters (<a class="el" href="ucnv_8h.html#ec7c273c8ce917ff75224e25914c53be">ucnv_getUnicodeSet()</a>).<p>
<dl compact><dt><b><a class="el" href="draft.html#_draft000028">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="5fc2e77dd6c8385e0e88fc6a7d72d9b46b1ad879b4752df1122a027e528a89d0"></a><!-- doxytag: member="USET_SPAN_CONDITION_COUNT" ref="5fc2e77dd6c8385e0e88fc6a7d72d9b46b1ad879b4752df1122a027e528a89d0" args="" -->USET_SPAN_CONDITION_COUNT</em>&nbsp;</td><td>
One more than the last span condition. 
<p>
<dl compact><dt><b><a class="el" href="draft.html#_draft000029">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
</td></tr>
</table>
</dl>

<p>
Definition at line <a class="el" href="uset_8h-source.html#l00157">157</a> of file <a class="el" href="uset_8h-source.html">uset.h</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="ceae4c9143329a4ad6f742f7e74ad6ce"></a><!-- doxytag: member="uset.h::uset_add" ref="ceae4c9143329a4ad6f742f7e74ad6ce" args="(USet *set, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_add           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds the given character to the given USet. 
<p>
After this call, uset_contains(set, c) will return TRUE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>the character to add </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001619">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="cb550f469f833d41c14536ea11bf54be"></a><!-- doxytag: member="uset.h::uset_addAll" ref="cb550f469f833d41c14536ea11bf54be" args="(USet *set, const USet *additionalSet)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_addAll           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>additionalSet</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds all of the elements in the specified set to this set if they're not already present. 
<p>
This operation effectively modifies this set so that its value is the <em>union</em> of the two sets. The behavior of this operation is unspecified if the specified collection is modified while the operation is in progress. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>additionalSet</em>&nbsp;</td><td>the source set whose elements are to be added to this set. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001620">Stable:</a></b></dt><dd>ICU 2.6 </dd></dl>

</div>
</div><p>
<a class="anchor" name="7a8489c50fd74324a4dc000bdceea49c"></a><!-- doxytag: member="uset.h::uset_addAllCodePoints" ref="7a8489c50fd74324a4dc000bdceea49c" args="(USet *set, const UChar *str, int32_t strLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_addAllCodePoints           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds each of the characters in this string to the set. 
<p>
Thus "ch" =&gt; {"c", "h"} If this set already any particular character, it has no effect on that character. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the source string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strLen</em>&nbsp;</td><td>the length of the string or -1 if null terminated. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001623">Stable:</a></b></dt><dd>ICU 3.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="9c1050ab4e1056abd819d4fa3b46948d"></a><!-- doxytag: member="uset.h::uset_addRange" ref="9c1050ab4e1056abd819d4fa3b46948d" args="(USet *set, UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_addRange           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds the given range of characters to the given USet. 
<p>
After this call, uset_contains(set, start, end) will return TRUE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the first character of the range to add, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>the last character of the range to add, inclusive </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001621">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="f2917938713745c91c44b622c61ad01b"></a><!-- doxytag: member="uset.h::uset_addString" ref="f2917938713745c91c44b622c61ad01b" args="(USet *set, const UChar *str, int32_t strLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_addString           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds the given string to the given USet. 
<p>
After this call, uset_containsString(set, str, strLen) will return TRUE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string to add </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strLen</em>&nbsp;</td><td>the length of the string or -1 if null terminated. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001622">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="3c3fb05328c5f3f1d5c9d230e3ff150e"></a><!-- doxytag: member="uset.h::uset_applyIntPropertyValue" ref="3c3fb05328c5f3f1d5c9d230e3ff150e" args="(USet *set, UProperty prop, int32_t value, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_applyIntPropertyValue           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uchar_8h.html#e40d616419e74ecc7c80a9febab03199">UProperty</a>&nbsp;</td>
          <td class="paramname"> <em>prop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Modifies the set to contain those code points which have the given value for the given binary or enumerated property, as returned by u_getIntPropertyValue. 
<p>
Prior contents of this set are lost. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to contain the code points defined by the property</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>prop</em>&nbsp;</td><td>a property in the range UCHAR_BIN_START..UCHAR_BIN_LIMIT-1 or UCHAR_INT_START..UCHAR_INT_LIMIT-1 or UCHAR_MASK_START..UCHAR_MASK_LIMIT-1.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>a value in the range u_getIntPropertyMinValue(prop).. u_getIntPropertyMaxValue(prop), with one exception. If prop is UCHAR_GENERAL_CATEGORY_MASK, then value should not be a UCharCategory, but rather a mask value produced by <a class="el" href="uchar_8h.html#6def30b7d6d22c7de63c2a80596ee847">U_GET_GC_MASK()</a>. This allows grouped categories such as [:L:] to be represented.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code input/output parameter</td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001615">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="c934accbf4a12c2f8b13a86ffab4c22c"></a><!-- doxytag: member="uset.h::uset_applyPattern" ref="c934accbf4a12c2f8b13a86ffab4c22c" args="(USet *set, const UChar *pattern, int32_t patternLength, uint32_t options, UErrorCode *status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_applyPattern           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>patternLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#435d1572bf3f880d55459d9805097f62">uint32_t</a>&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Modifies the set to represent the set specified by the given pattern. 
<p>
See the <a class="el" href="classUnicodeSet.html">UnicodeSet</a> class description for the syntax of the pattern language. See also the User Guide chapter about <a class="el" href="classUnicodeSet.html">UnicodeSet</a>. <em>Empties the set passed before applying the pattern.</em> A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>The set to which the pattern is to be applied. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>A pointer to UChar string specifying what characters are in the set. The character at pattern[0] must be a '['. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>patternLength</em>&nbsp;</td><td>The length of the UChar string. -1 if NUL terminated. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>Returns an error if the pattern cannot be parsed. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Upon successful parse, the value is either the index of the character after the closing ']' of the parsed pattern. If the status code indicates failure, then the return value is the index of the error in the source.</dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001614">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div><p>
<a class="anchor" name="6ea4197ee50887dde5eb6e9deb2f3442"></a><!-- doxytag: member="uset.h::uset_applyPropertyAlias" ref="6ea4197ee50887dde5eb6e9deb2f3442" args="(USet *set, const UChar *prop, int32_t propLength, const UChar *value, int32_t valueLength, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_applyPropertyAlias           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>prop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>propLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>valueLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Modifies the set to contain those code points which have the given value for the given property. 
<p>
Prior contents of this set are lost. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to contain the code points defined by the given property and value alias</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>prop</em>&nbsp;</td><td>a string specifying a property alias, either short or long. The name is matched loosely. See PropertyAliases.txt for names and a description of loose matching. If the value string is empty, then this string is interpreted as either a General_Category value alias, a Script value alias, a binary property alias, or a special ID. Special IDs are matched loosely and correspond to the following sets:</td></tr>
  </table>
</dl>
"ANY" = [\u0000-\U0010FFFF], "ASCII" = [\u0000-\u007F], "Assigned" = [:^Cn:].<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>propLength</em>&nbsp;</td><td>the length of the prop, or -1 if NULL</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>a string specifying a value alias, either short or long. The name is matched loosely. See PropertyValueAliases.txt for names and a description of loose matching. In addition to aliases listed, numeric values and canonical combining classes may be expressed numerically, e.g., ("nv", "0.5") or ("ccc", "220"). The value string may also be empty.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>valueLength</em>&nbsp;</td><td>the length of the value, or -1 if NULL</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code input/output parameter</td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001616">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="0de50c1284ddc7d64b7c2dc6fc39921f"></a><!-- doxytag: member="uset.h::uset_charAt" ref="0de50c1284ddc7d64b7c2dc6fc39921f" args="(const USet *set, int32_t index)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> uset_charAt           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>index</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the character at the given index within this set, where the set is ordered by ascending code point. 
<p>
If the index is out of range, return (UChar32)-1. The inverse of this method is <code>indexOf()</code>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>an index from 0..size()-1 to obtain the char for </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the character at the given index, or (UChar32)-1. </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001639">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="19fe69e5c9597433b6e63ff9d8497e4b"></a><!-- doxytag: member="uset.h::uset_clear" ref="19fe69e5c9597433b6e63ff9d8497e4b" args="(USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_clear           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes all of the elements from this set. 
<p>
This set will be empty after this call returns. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001633">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="1965f27413bb1fee1cc03bdfb061148e"></a><!-- doxytag: member="uset.h::uset_clone" ref="1965f27413bb1fee1cc03bdfb061148e" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>* uset_clone           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns a copy of this object. 
<p>
If this set is frozen, then the clone will be frozen as well. Use <a class="el" href="uset_8h.html#6b84cdeb472adde6bfa8b7ea7f33f0d4">uset_cloneAsThawed()</a> for a mutable clone of a frozen set. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the original set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the newly allocated copy of the set </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#6b84cdeb472adde6bfa8b7ea7f33f0d4">uset_cloneAsThawed</a> </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000018">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>

</div>
</div><p>
<a class="anchor" name="6b84cdeb472adde6bfa8b7ea7f33f0d4"></a><!-- doxytag: member="uset.h::uset_cloneAsThawed" ref="6b84cdeb472adde6bfa8b7ea7f33f0d4" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>* uset_cloneAsThawed           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Clone the set and make the clone mutable. 
<p>
See the ICU4J Freezable interface for details. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the mutable clone </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#851fc7d7e6920ff73fb9529d75aba387">uset_freeze</a> <p>
<a class="el" href="uset_8h.html#c56a97260c2b1092381111b5004c9e40">uset_isFrozen</a> <p>
<a class="el" href="uset_8h.html#1965f27413bb1fee1cc03bdfb061148e">uset_clone</a> </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000021">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>

</div>
</div><p>
<a class="anchor" name="bb0d0fb8d660204fd7fef7fe920bb70c"></a><!-- doxytag: member="uset.h::uset_close" ref="bb0d0fb8d660204fd7fef7fe920bb70c" args="(USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_close           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Disposes of the storage used by a USet object. 
<p>
This function should be called exactly once for objects returned by <a class="el" href="uset_8h.html#65a4e226273821916545e45dee27a144">uset_open()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to dispose of </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001612">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="cacac5438cd07fcfe5c4f52a561f36c2"></a><!-- doxytag: member="uset.h::uset_compact" ref="cacac5438cd07fcfe5c4f52a561f36c2" args="(USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_compact           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Reallocate this objects internal structures to take up the least possible space, without changing this object's value. 
<p>
A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object on which to perfrom the compact </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001630">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="648e93c5d2893cc65b0eb80f3162544e"></a><!-- doxytag: member="uset.h::uset_complement" ref="648e93c5d2893cc65b0eb80f3162544e" args="(USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_complement           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Inverts this set. 
<p>
This operation modifies this set so that its value is its complement. This operation does not affect the multicharacter strings, if any. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001631">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="e1d4b880a74aecc07039dfdfb40489c4"></a><!-- doxytag: member="uset.h::uset_complementAll" ref="e1d4b880a74aecc07039dfdfb40489c4" args="(USet *set, const USet *complement)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_complementAll           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>complement</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Complements in this set all elements contained in the specified set. 
<p>
Any character in the other set will be removed if it is in this set, or will be added if it is not in this set. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set with which to complement </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>complement</em>&nbsp;</td><td>set that defines which elements will be xor'ed from this set. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001632">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="f8d9773ae28c70f253d1ba48ee4957f5"></a><!-- doxytag: member="uset.h::uset_contains" ref="f8d9773ae28c70f253d1ba48ee4957f5" args="(const USet *set, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_contains           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns TRUE if the given USet contains the given character. 
<p>
This function works faster with a frozen set. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>The codepoint to check for within the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if set contains c </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001635">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="f55a5a2133c850561c6bd6f53e32a91c"></a><!-- doxytag: member="uset.h::uset_containsAll" ref="f55a5a2133c850561c6bd6f53e32a91c" args="(const USet *set1, const USet *set2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsAll           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if set1 contains all the characters and strings of set2. 
<p>
It answers the question, 'Is set1 a superset of set2?' <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set1</em>&nbsp;</td><td>set to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>set2</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001643">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="db76bbc067c2d78c697a55b01d170674"></a><!-- doxytag: member="uset.h::uset_containsAllCodePoints" ref="db76bbc067c2d78c697a55b01d170674" args="(const USet *set, const UChar *str, int32_t strLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsAllCodePoints           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if this set contains all the characters of the given string. 
<p>
This is does not check containment of grapheme clusters, like uset_containsString. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>set of characters to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>string containing codepoints to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strLen</em>&nbsp;</td><td>the length of the string or -1 if null terminated. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001644">Stable:</a></b></dt><dd>ICU 3.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="b1fd51712466a660f821f1ae4948e009"></a><!-- doxytag: member="uset.h::uset_containsNone" ref="b1fd51712466a660f821f1ae4948e009" args="(const USet *set1, const USet *set2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsNone           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if set1 contains none of the characters and strings of set2. 
<p>
It answers the question, 'Is set1 a disjoint set of set2?' <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set1</em>&nbsp;</td><td>set to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>set2</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001645">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="dab26ac0159e09e748869290be18bf2e"></a><!-- doxytag: member="uset.h::uset_containsRange" ref="dab26ac0159e09e748869290be18bf2e" args="(const USet *set, UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsRange           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns TRUE if the given USet contains all characters c where start &lt;= c &amp;&amp; c &lt;= end. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the first character of the range to test, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>the last character of the range to test, inclusive </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE if set contains the range </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001636">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="e05a6aa4c5572219700ddb142a4e2a71"></a><!-- doxytag: member="uset.h::uset_containsSome" ref="e05a6aa4c5572219700ddb142a4e2a71" args="(const USet *set1, const USet *set2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsSome           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if set1 contains some of the characters and strings of set2. 
<p>
It answers the question, 'Does set1 and set2 have an intersection?' <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set1</em>&nbsp;</td><td>set to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>set2</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001646">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="2e23614c8863a4cf606f55d38aecbe5e"></a><!-- doxytag: member="uset.h::uset_containsString" ref="2e23614c8863a4cf606f55d38aecbe5e" args="(const USet *set, const UChar *str, int32_t strLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_containsString           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns TRUE if the given USet contains the given string. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strLen</em>&nbsp;</td><td>the length of the string or -1 if null terminated. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if set contains str </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001637">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="027edbf3f81914abb7a703fb5b83bbcf"></a><!-- doxytag: member="uset.h::uset_equals" ref="027edbf3f81914abb7a703fb5b83bbcf" args="(const USet *set1, const USet *set2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_equals           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if set1 contains all of the characters and strings of set2, and vis versa. 
<p>
It answers the question, 'Is set1 equal to set2?' <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set1</em>&nbsp;</td><td>set to be checked for containment </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>set2</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001647">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="851fc7d7e6920ff73fb9529d75aba387"></a><!-- doxytag: member="uset.h::uset_freeze" ref="851fc7d7e6920ff73fb9529d75aba387" args="(USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_freeze           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Freeze the set (make it immutable). 
<p>
Once frozen, it cannot be unfrozen and is therefore thread-safe until it is deleted. See the ICU4J Freezable interface for details. Freezing the set may also make some operations faster, for example <a class="el" href="uset_8h.html#f8d9773ae28c70f253d1ba48ee4957f5">uset_contains()</a> and <a class="el" href="uset_8h.html#1c2ae031cbb8557b0106a571dfbdf038">uset_span()</a>. A frozen set will not be modified. (It remains frozen.) <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the same set, now frozen </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#c56a97260c2b1092381111b5004c9e40">uset_isFrozen</a> <p>
<a class="el" href="uset_8h.html#6b84cdeb472adde6bfa8b7ea7f33f0d4">uset_cloneAsThawed</a> </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000020">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>

</div>
</div><p>
<a class="anchor" name="1d9da52f345a1b4de5a933d8a3213070"></a><!-- doxytag: member="uset.h::uset_getItem" ref="1d9da52f345a1b4de5a933d8a3213070" args="(const USet *set, int32_t itemIndex, UChar32 *start, UChar32 *end, UChar *str, int32_t strCapacity, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_getItem           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>itemIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *&nbsp;</td>
          <td class="paramname"> <em>end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strCapacity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns an item of this set. 
<p>
An item is either a range of characters or a single multicharacter string. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>itemIndex</em>&nbsp;</td><td>a non-negative integer in the range 0.. uset_getItemCount(set)-1 </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>pointer to variable to receive first character in range, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>pointer to variable to receive last character in range, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>buffer to receive the string, may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strCapacity</em>&nbsp;</td><td>capacity of str, or 0 if str is NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the string (&gt;= 2), or 0 if the item is a range, in which case it is the range *start..*end, or -1 if itemIndex is out of range </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001642">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="3d09ac37a8e0fbf5d38ef8281a3f4b3f"></a><!-- doxytag: member="uset.h::uset_getItemCount" ref="3d09ac37a8e0fbf5d38ef8281a3f4b3f" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_getItemCount           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the number of items in this set. 
<p>
An item is either a range of characters or a single multicharacter string. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a non-negative integer counting the character ranges and/or strings contained in set </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001641">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="6a197df6a2d0d9cafc8561d6fab55148"></a><!-- doxytag: member="uset.h::uset_getSerializedRange" ref="6a197df6a2d0d9cafc8561d6fab55148" args="(const USerializedSet *set, int32_t rangeIndex, UChar32 *pStart, UChar32 *pEnd)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_getSerializedRange           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>rangeIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *&nbsp;</td>
          <td class="paramname"> <em>pStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> *&nbsp;</td>
          <td class="paramname"> <em>pEnd</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns a range of characters contained in the given serialized set. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the serialized set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>rangeIndex</em>&nbsp;</td><td>a non-negative integer in the range 0.. uset_getSerializedRangeCount(set)-1 </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pStart</em>&nbsp;</td><td>pointer to variable to receive first character in range, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pEnd</em>&nbsp;</td><td>pointer to variable to receive last character in range, inclusive </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if rangeIndex is valid, otherwise false </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001653">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="4b09f3f07927c1fbae2b05cce3a22e4f"></a><!-- doxytag: member="uset.h::uset_getSerializedRangeCount" ref="4b09f3f07927c1fbae2b05cce3a22e4f" args="(const USerializedSet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_getSerializedRangeCount           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the number of disjoint ranges of characters contained in the given serialized set. 
<p>
Ignores any strings contained in the set. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the serialized set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a non-negative integer counting the character ranges contained in set </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001652">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="ee4c3abbd48d9d899f6250d498a29168"></a><!-- doxytag: member="uset.h::uset_getSerializedSet" ref="ee4c3abbd48d9d899f6250d498a29168" args="(USerializedSet *fillSet, const uint16_t *src, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_getSerializedSet           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structUSerializedSet.html">USerializedSet</a> *&nbsp;</td>
          <td class="paramname"> <em>fillSet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="pwin32_8h.html#273cf69d639a59973b6019625df33e30">uint16_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Given a serialized array, fill in the given serialized set object. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fillSet</em>&nbsp;</td><td>pointer to result </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>pointer to start of array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>length of array </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the given array is valid, otherwise false </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001649">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="902222c7bd584a91102b26c77842be50"></a><!-- doxytag: member="uset.h::uset_indexOf" ref="902222c7bd584a91102b26c77842be50" args="(const USet *set, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_indexOf           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the index of the given character within this set, where the set is ordered by ascending code point. 
<p>
If the character is not in this set, return -1. The inverse of this method is <code>charAt()</code>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>the character to obtain the index for </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>an index from 0..size()-1, or -1 </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001638">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="42e3efc0c34ebeb18df64b4c38158fd7"></a><!-- doxytag: member="uset.h::uset_isEmpty" ref="42e3efc0c34ebeb18df64b4c38158fd7" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_isEmpty           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns TRUE if the given USet contains no characters and no strings. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if set is empty </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001634">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="c56a97260c2b1092381111b5004c9e40"></a><!-- doxytag: member="uset.h::uset_isFrozen" ref="c56a97260c2b1092381111b5004c9e40" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_isFrozen           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Determines whether the set has been frozen (made immutable) or not. 
<p>
See the ICU4J Freezable interface for details. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE/FALSE for whether the set has been frozen </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#851fc7d7e6920ff73fb9529d75aba387">uset_freeze</a> <p>
<a class="el" href="uset_8h.html#6b84cdeb472adde6bfa8b7ea7f33f0d4">uset_cloneAsThawed</a> </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000019">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>

</div>
</div><p>
<a class="anchor" name="65a4e226273821916545e45dee27a144"></a><!-- doxytag: member="uset.h::uset_open" ref="65a4e226273821916545e45dee27a144" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>* uset_open           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a USet object that contains the range of characters start. 
<p>
.end, inclusive. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character of the range, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character of the range, inclusive </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a newly created USet. The caller must call <a class="el" href="uset_8h.html#bb0d0fb8d660204fd7fef7fe920bb70c">uset_close()</a> on it when done. </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001609">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="b8b79fbe81d1245c15ee17a64c4513b3"></a><!-- doxytag: member="uset.h::uset_openPattern" ref="b8b79fbe81d1245c15ee17a64c4513b3" args="(const UChar *pattern, int32_t patternLength, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>* uset_openPattern           </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>patternLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a set from the given pattern. 
<p>
See the <a class="el" href="classUnicodeSet.html">UnicodeSet</a> class description for the syntax of the pattern language. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>patternLength</em>&nbsp;</td><td>the length of the pattern, or -1 if null terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>the error code </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001610">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="34a8914b62d0de444d7a2e7981eb343a"></a><!-- doxytag: member="uset.h::uset_openPatternOptions" ref="34a8914b62d0de444d7a2e7981eb343a" args="(const UChar *pattern, int32_t patternLength, uint32_t options, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a>* uset_openPatternOptions           </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>patternLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#435d1572bf3f880d55459d9805097f62">uint32_t</a>&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a set from the given pattern. 
<p>
See the <a class="el" href="classUnicodeSet.html">UnicodeSet</a> class description for the syntax of the pattern language. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>patternLength</em>&nbsp;</td><td>the length of the pattern, or -1 if null terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>the error code </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001611">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="fe44d95c8c0be1e4ce4399a4ee2f1f8f"></a><!-- doxytag: member="uset.h::uset_remove" ref="fe44d95c8c0be1e4ce4399a4ee2f1f8f" args="(USet *set, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_remove           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes the given character from the given USet. 
<p>
After this call, uset_contains(set, c) will return FALSE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object from which to remove the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>the character to remove </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001624">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="762f9d6a016dd5a59a9a6701255e5e96"></a><!-- doxytag: member="uset.h::uset_removeAll" ref="762f9d6a016dd5a59a9a6701255e5e96" args="(USet *set, const USet *removeSet)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_removeAll           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>removeSet</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes from this set all of its elements that are contained in the specified set. 
<p>
This operation effectively modifies this set so that its value is the <em>asymmetric set difference</em> of the two sets. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object from which the elements are to be removed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>removeSet</em>&nbsp;</td><td>the object that defines which elements will be removed from this set </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001627">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="6b0fc0ae495d8aa755e2f42769e49b62"></a><!-- doxytag: member="uset.h::uset_removeRange" ref="6b0fc0ae495d8aa755e2f42769e49b62" args="(USet *set, UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_removeRange           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes the given range of characters from the given USet. 
<p>
After this call, uset_contains(set, start, end) will return FALSE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the first character of the range to remove, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>the last character of the range to remove, inclusive </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001625">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="ec1fe2c7d06a475d21fbf822fb42b825"></a><!-- doxytag: member="uset.h::uset_removeString" ref="ec1fe2c7d06a475d21fbf822fb42b825" args="(USet *set, const UChar *str, int32_t strLen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_removeString           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>strLen</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes the given string to the given USet. 
<p>
After this call, uset_containsString(set, str, strLen) will return FALSE. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to which to add the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string to remove </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>strLen</em>&nbsp;</td><td>the length of the string or -1 if null terminated. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001626">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="319e09dd5e7c7987e177da7d31239ed2"></a><!-- doxytag: member="uset.h::uset_resemblesPattern" ref="319e09dd5e7c7987e177da7d31239ed2" args="(const UChar *pattern, int32_t patternLength, int32_t pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_resemblesPattern           </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>patternLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>pos</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return true if the given position, in the given pattern, appears to be the start of a <a class="el" href="classUnicodeSet.html">UnicodeSet</a> pattern. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying the pattern </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>patternLength</em>&nbsp;</td><td>the length of the pattern, or -1 if NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>the given position </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001617">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="49d1074ef9aeca26567d9a35ee0e97b9"></a><!-- doxytag: member="uset.h::uset_retain" ref="49d1074ef9aeca26567d9a35ee0e97b9" args="(USet *set, UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_retain           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retain only the elements in this set that are contained in the specified range. 
<p>
If <code>start &gt; end</code> then an empty range is retained, leaving the set empty. This is equivalent to a boolean logic AND, or a set INTERSECTION. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object for which to retain only the specified range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range to be retained to this set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range to be retained to this set. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001628">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="6878a72dcd2249c49924ec98c922ba2e"></a><!-- doxytag: member="uset.h::uset_retainAll" ref="6878a72dcd2249c49924ec98c922ba2e" args="(USet *set, const USet *retain)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_retainAll           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>retain</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retains only the elements in this set that are contained in the specified set. 
<p>
In other words, removes from this set all of its elements that are not contained in the specified set. This operation effectively modifies this set so that its value is the <em>intersection</em> of the two sets. A frozen set will not be modified.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object on which to perform the retain </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>retain</em>&nbsp;</td><td>set that defines which elements this set will retain </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001629">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="7b1d3c1676d23e1dce2b6532bdc00aed"></a><!-- doxytag: member="uset.h::uset_serialize" ref="7b1d3c1676d23e1dce2b6532bdc00aed" args="(const USet *set, uint16_t *dest, int32_t destCapacity, UErrorCode *pErrorCode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_serialize           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#273cf69d639a59973b6019625df33e30">uint16_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>destCapacity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>pErrorCode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Serializes this set into an array of 16-bit integers. 
<p>
Serialization (currently) only records the characters in the set; multicharacter strings are ignored.<p>
The array has following format (each line is one 16-bit integer):<p>
length = (n+2*m) | (m!=0?0x8000:0) bmpLength = n; present if m!=0 bmp[0] bmp[1] ... bmp[n-1] supp-high[0] supp-low[0] supp-high[1] supp-low[1] ... supp-high[m-1] supp-low[m-1]<p>
The array starts with a header. After the header are n bmp code points, then m supplementary code points. Either n or m or both may be zero. n+2*m is always &lt;= 0x7FFF.<p>
If there are no supplementary characters (if m==0) then the header is one 16-bit integer, 'length', with value n.<p>
If there are supplementary characters (if m!=0) then the header is two 16-bit integers. The first, 'length', has value (n+2*m)|0x8000. The second, 'bmpLength', has value n.<p>
After the header the code points are stored in ascending order. Supplementary code points are stored as most significant 16 bits followed by least significant 16 bits.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>pointer to buffer of destCapacity 16-bit integers. May be NULL only if destCapacity is zero. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destCapacity</em>&nbsp;</td><td>size of dest, or zero. Must not be negative. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pErrorCode</em>&nbsp;</td><td>pointer to the error code. Will be set to U_INDEX_OUTOFBOUNDS_ERROR if n+2*m &gt; 0x7FFF. Will be set to U_BUFFER_OVERFLOW_ERROR if n+2*m+(m!=0?2:1) &gt; destCapacity. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the total length of the serialized format, including the header, that is, n+2*m+(m!=0?2:1), or 0 on error other than U_BUFFER_OVERFLOW_ERROR. </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001648">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="4a4f37a9684cfd16c1271ff6cbaf4ea6"></a><!-- doxytag: member="uset.h::uset_serializedContains" ref="4a4f37a9684cfd16c1271ff6cbaf4ea6" args="(const USerializedSet *set, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> uset_serializedContains           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structUSerializedSet.html">USerializedSet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns TRUE if the given <a class="el" href="structUSerializedSet.html">USerializedSet</a> contains the given character. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the serialized set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>The codepoint to check for within the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if set contains c </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001651">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="171f42b2a952b070101378748e72b9bb"></a><!-- doxytag: member="uset.h::uset_set" ref="171f42b2a952b070101378748e72b9bb" args="(USet *set, UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Causes the USet object to represent the range <code>start - end</code>. 
<p>
If <code>start &gt; end</code> then this USet is set to an empty range. A frozen set will not be modified. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the object to set to the given range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character in the set, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character in the set, inclusive </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001613">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div><p>
<a class="anchor" name="550b1efa4844dc9d745ca7c01836bb10"></a><!-- doxytag: member="uset.h::uset_setSerializedToOne" ref="550b1efa4844dc9d745ca7c01836bb10" args="(USerializedSet *fillSet, UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void uset_setSerializedToOne           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structUSerializedSet.html">USerializedSet</a> *&nbsp;</td>
          <td class="paramname"> <em>fillSet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the <a class="el" href="structUSerializedSet.html">USerializedSet</a> to contain the given character (and nothing else). 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fillSet</em>&nbsp;</td><td>pointer to result </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>The codepoint to set </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001650">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="83f6b0b79bbfa0a65248fb39f40e88dd"></a><!-- doxytag: member="uset.h::uset_size" ref="83f6b0b79bbfa0a65248fb39f40e88dd" args="(const USet *set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_size           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the number of characters and strings contained in the given USet. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a non-negative integer counting the characters and strings contained in set </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001640">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<a class="anchor" name="1c2ae031cbb8557b0106a571dfbdf038"></a><!-- doxytag: member="uset.h::uset_span" ref="1c2ae031cbb8557b0106a571dfbdf038" args="(const USet *set, const UChar *s, int32_t length, USetSpanCondition spanCondition)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_span           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). 
<p>
See USetSpanCondition for details. Similar to the strspn() C library function. Unpaired surrogates are treated according to contains() of their surrogate code points. This function works faster with a frozen set and with a non-negative string length argument. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the initial substring according to the spanCondition; 0 if the start of the string does not fit the spanCondition </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000022">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="8f38fd1f93c2908ff3bd9290a849c2f7"></a><!-- doxytag: member="uset.h::uset_spanBack" ref="8f38fd1f93c2908ff3bd9290a849c2f7" args="(const USet *set, const UChar *s, int32_t length, USetSpanCondition spanCondition)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_spanBack           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). 
<p>
See USetSpanCondition for details. Unpaired surrogates are treated according to contains() of their surrogate code points. This function works faster with a frozen set and with a non-negative string length argument. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the start of the trailing substring according to the spanCondition; the string length if the end of the string does not fit the spanCondition </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000023">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="f3533477f8a22a4988b625ecbb9df8cf"></a><!-- doxytag: member="uset.h::uset_spanBackUTF8" ref="f3533477f8a22a4988b625ecbb9df8cf" args="(const USet *set, const char *s, int32_t length, USetSpanCondition spanCondition)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_spanBackUTF8           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). 
<p>
See USetSpanCondition for details. Malformed byte sequences are treated according to contains(0xfffd). This function works faster with a frozen set and with a non-negative string length argument. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string (UTF-8) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the start of the trailing substring according to the spanCondition; the string length if the end of the string does not fit the spanCondition </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000025">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="544f014d315c49f98c39aac7d4fe6a9a"></a><!-- doxytag: member="uset.h::uset_spanUTF8" ref="544f014d315c49f98c39aac7d4fe6a9a" args="(const USet *set, const char *s, int32_t length, USetSpanCondition spanCondition)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_spanUTF8           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). 
<p>
See USetSpanCondition for details. Similar to the strspn() C library function. Malformed byte sequences are treated according to contains(0xfffd). This function works faster with a frozen set and with a non-negative string length argument. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string (UTF-8) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the initial substring according to the spanCondition; 0 if the start of the string does not fit the spanCondition </dd></dl>
<dl compact><dt><b><a class="el" href="draft.html#_draft000024">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 3.8 </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="dd59ca5626ba49504529174c7f47e4b3"></a><!-- doxytag: member="uset.h::uset_toPattern" ref="dd59ca5626ba49504529174c7f47e4b3" args="(const USet *set, UChar *result, int32_t resultCapacity, UBool escapeUnprintable, UErrorCode *ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> uset_toPattern           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#dce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>set</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>&nbsp;</td>
          <td class="paramname"> <em>resultCapacity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td>
          <td class="paramname"> <em>escapeUnprintable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> *&nbsp;</td>
          <td class="paramname"> <em>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns a string representation of this set. 
<p>
If the result of calling this function is passed to a <a class="el" href="uset_8h.html#b8b79fbe81d1245c15ee17a64c4513b3">uset_openPattern()</a>, it will produce another set that is equal to this one. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>result</em>&nbsp;</td><td>the string to receive the rules, may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>resultCapacity</em>&nbsp;</td><td>the capacity of result, may be 0 if result is NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>escapeUnprintable</em>&nbsp;</td><td>if TRUE then convert unprintable character to their hex escape representations, \uxxxx or \Uxxxxxxxx. Unprintable characters are those other than U+000A, U+0020..U+007E. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>length of string, possibly larger than resultCapacity </dd></dl>
<dl compact><dt><b><a class="el" href="stable.html#_stable001618">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Sep 14 12:59:30 2007 for ICU 3.8 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
</body>
</html>