Sophie

Sophie

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

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: utypes.h Source File</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>utypes.h</h1><a href="utypes_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment">**********************************************************************</span>
<a name="l00003"></a>00003 <span class="comment">*   Copyright (C) 1996-2007, International Business Machines</span>
<a name="l00004"></a>00004 <span class="comment">*   Corporation and others.  All Rights Reserved.</span>
<a name="l00005"></a>00005 <span class="comment">**********************************************************************</span>
<a name="l00006"></a>00006 <span class="comment">*</span>
<a name="l00007"></a>00007 <span class="comment">*  FILE NAME : UTYPES.H (formerly ptypes.h)</span>
<a name="l00008"></a>00008 <span class="comment">*</span>
<a name="l00009"></a>00009 <span class="comment">*   Date        Name        Description</span>
<a name="l00010"></a>00010 <span class="comment">*   12/11/96    helena      Creation.</span>
<a name="l00011"></a>00011 <span class="comment">*   02/27/97    aliu        Added typedefs for UClassID, int8, int16, int32,</span>
<a name="l00012"></a>00012 <span class="comment">*                           uint8, uint16, and uint32.</span>
<a name="l00013"></a>00013 <span class="comment">*   04/01/97    aliu        Added XP_CPLUSPLUS and modified to work under C as</span>
<a name="l00014"></a>00014 <span class="comment">*                            well as C++.</span>
<a name="l00015"></a>00015 <span class="comment">*                           Modified to use memcpy() for uprv_arrayCopy() fns.</span>
<a name="l00016"></a>00016 <span class="comment">*   04/14/97    aliu        Added TPlatformUtilities.</span>
<a name="l00017"></a>00017 <span class="comment">*   05/07/97    aliu        Added import/export specifiers (replacing the old</span>
<a name="l00018"></a>00018 <span class="comment">*                           broken EXT_CLASS).  Added version number for our</span>
<a name="l00019"></a>00019 <span class="comment">*                           code.  Cleaned up header.</span>
<a name="l00020"></a>00020 <span class="comment">*    6/20/97    helena      Java class name change.</span>
<a name="l00021"></a>00021 <span class="comment">*   08/11/98    stephen     UErrorCode changed from typedef to enum</span>
<a name="l00022"></a>00022 <span class="comment">*   08/12/98    erm         Changed T_ANALYTIC_PACKAGE_VERSION to 3</span>
<a name="l00023"></a>00023 <span class="comment">*   08/14/98    stephen     Added uprv_arrayCopy() for int8_t, int16_t, int32_t</span>
<a name="l00024"></a>00024 <span class="comment">*   12/09/98    jfitz       Added BUFFER_OVERFLOW_ERROR (bug 1100066)</span>
<a name="l00025"></a>00025 <span class="comment">*   04/20/99    stephen     Cleaned up &amp; reworked for autoconf.</span>
<a name="l00026"></a>00026 <span class="comment">*                           Renamed to utypes.h.</span>
<a name="l00027"></a>00027 <span class="comment">*   05/05/99    stephen     Changed to use &lt;inttypes.h&gt;</span>
<a name="l00028"></a>00028 <span class="comment">*   12/07/99    helena      Moved copyright notice string from ucnv_bld.h here.</span>
<a name="l00029"></a>00029 <span class="comment">*******************************************************************************</span>
<a name="l00030"></a>00030 <span class="comment">*/</span>
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 <span class="preprocessor">#ifndef UTYPES_H</span>
<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#define UTYPES_H</span>
<a name="l00034"></a>00034 <span class="preprocessor"></span>
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 <span class="preprocessor">#include "<a class="code" href="umachine_8h.html">unicode/umachine.h</a>"</span>
<a name="l00037"></a>00037 <span class="preprocessor">#include "<a class="code" href="utf_8h.html">unicode/utf.h</a>"</span>
<a name="l00038"></a>00038 <span class="preprocessor">#include "<a class="code" href="uversion_8h.html">unicode/uversion.h</a>"</span>
<a name="l00039"></a>00039 <span class="preprocessor">#include "<a class="code" href="uconfig_8h.html">unicode/uconfig.h</a>"</span>
<a name="l00040"></a>00040 
<a name="l00041"></a>00041 <span class="preprocessor">#if !U_DEFAULT_SHOW_DRAFT &amp;&amp; !defined(U_SHOW_DRAFT_API)</span>
<a name="l00042"></a><a class="code" href="utypes_8h.html#06945159db789670a11e785b4f691b41">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define U_HIDE_DRAFT_API 1</span>
<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00044"></a>00044 <span class="preprocessor"></span>
<a name="l00045"></a>00045 <span class="preprocessor">#ifdef U_HIDE_DRAFT_API</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#include "unicode/udraft.h"</span>
<a name="l00047"></a>00047 <span class="preprocessor">#endif</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span>
<a name="l00049"></a>00049 <span class="preprocessor">#ifdef U_HIDE_DEPRECATED_API</span>
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#include "unicode/udeprctd.h"</span>
<a name="l00051"></a>00051 <span class="preprocessor">#endif</span>
<a name="l00052"></a>00052 <span class="preprocessor"></span>
<a name="l00053"></a>00053 <span class="preprocessor">#ifdef U_HIDE_DEPRECATED_API</span>
<a name="l00054"></a>00054 <span class="preprocessor"></span><span class="preprocessor">#include "unicode/uobslete.h"</span>
<a name="l00055"></a>00055 <span class="preprocessor">#endif</span>
<a name="l00056"></a>00056 <span class="preprocessor"></span>
<a name="l00057"></a>00057 <span class="preprocessor">#ifdef U_HIDE_INTERNAL_API</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span><span class="preprocessor">#include "unicode/uintrnal.h"</span>
<a name="l00059"></a>00059 <span class="preprocessor">#endif</span>
<a name="l00060"></a>00060 <span class="preprocessor"></span>
<a name="l00061"></a>00061 <span class="preprocessor">#ifdef U_HIDE_SYSTEM_API</span>
<a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#include "unicode/usystem.h"</span>
<a name="l00063"></a>00063 <span class="preprocessor">#endif</span>
<a name="l00064"></a>00064 <span class="preprocessor"></span>
<a name="l00075"></a>00075 <span class="comment">/*===========================================================================*/</span>
<a name="l00076"></a>00076 <span class="comment">/* char Character set family                                                 */</span>
<a name="l00077"></a>00077 <span class="comment">/*===========================================================================*/</span>
<a name="l00078"></a>00078 
<a name="l00083"></a><a class="code" href="utypes_8h.html#c909e31de712001c1f7b4697ce741bfd">00083</a> <span class="preprocessor">#define U_ASCII_FAMILY 0</span>
<a name="l00084"></a>00084 <span class="preprocessor"></span>
<a name="l00089"></a><a class="code" href="utypes_8h.html#6d9eee92eaf6704604a5951470786cfa">00089</a> <span class="preprocessor">#define U_EBCDIC_FAMILY 1</span>
<a name="l00090"></a>00090 <span class="preprocessor"></span>
<a name="l00134"></a>00134 <span class="preprocessor">#ifndef U_CHARSET_FAMILY</span>
<a name="l00135"></a><a class="code" href="utypes_8h.html#7fb0b0fede299f9d74973b15e79d3085">00135</a> <span class="preprocessor"></span><span class="preprocessor">#   define U_CHARSET_FAMILY 0</span>
<a name="l00136"></a>00136 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00137"></a>00137 <span class="preprocessor"></span>
<a name="l00138"></a>00138 <span class="comment">/*===========================================================================*/</span>
<a name="l00139"></a>00139 <span class="comment">/* ICUDATA naming scheme                                                     */</span>
<a name="l00140"></a>00140 <span class="comment">/*===========================================================================*/</span>
<a name="l00141"></a>00141 
<a name="l00158"></a>00158 <span class="preprocessor">#if U_CHARSET_FAMILY</span>
<a name="l00159"></a>00159 <span class="preprocessor"></span><span class="preprocessor">#   if U_IS_BIG_ENDIAN</span>
<a name="l00160"></a>00160 <span class="preprocessor"></span>   <span class="comment">/* EBCDIC - should always be BE */</span>
<a name="l00161"></a>00161 <span class="preprocessor">#     define U_ICUDATA_TYPE_LETTER "e"</span>
<a name="l00162"></a>00162 <span class="preprocessor"></span><span class="preprocessor">#     define U_ICUDATA_TYPE_LITLETTER e</span>
<a name="l00163"></a>00163 <span class="preprocessor"></span><span class="preprocessor">#   else</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span><span class="preprocessor">#     error "Don't know what to do with little endian EBCDIC!"</span>
<a name="l00165"></a>00165 <span class="preprocessor"></span><span class="preprocessor">#     define U_ICUDATA_TYPE_LETTER "x"</span>
<a name="l00166"></a>00166 <span class="preprocessor"></span><span class="preprocessor">#     define U_ICUDATA_TYPE_LITLETTER x</span>
<a name="l00167"></a>00167 <span class="preprocessor"></span><span class="preprocessor">#   endif</span>
<a name="l00168"></a>00168 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00169"></a>00169 <span class="preprocessor"></span><span class="preprocessor">#   if U_IS_BIG_ENDIAN</span>
<a name="l00170"></a>00170 <span class="preprocessor"></span>      <span class="comment">/* Big-endian ASCII */</span>
<a name="l00171"></a>00171 <span class="preprocessor">#     define U_ICUDATA_TYPE_LETTER "b"</span>
<a name="l00172"></a>00172 <span class="preprocessor"></span><span class="preprocessor">#     define U_ICUDATA_TYPE_LITLETTER b</span>
<a name="l00173"></a>00173 <span class="preprocessor"></span><span class="preprocessor">#   else</span>
<a name="l00174"></a>00174 <span class="preprocessor"></span>      <span class="comment">/* Little-endian ASCII */</span>
<a name="l00175"></a><a class="code" href="utypes_8h.html#5ffc2b3a9a3b3e33c35e8b9f1d5b5055">00175</a> <span class="preprocessor">#     define U_ICUDATA_TYPE_LETTER "l"</span>
<a name="l00176"></a><a class="code" href="utypes_8h.html#8f6a7088610de8810d4892c72d07f857">00176</a> <span class="preprocessor"></span><span class="preprocessor">#     define U_ICUDATA_TYPE_LITLETTER l</span>
<a name="l00177"></a>00177 <span class="preprocessor"></span><span class="preprocessor">#   endif</span>
<a name="l00178"></a>00178 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00179"></a>00179 <span class="preprocessor"></span>
<a name="l00185"></a><a class="code" href="utypes_8h.html#2c1a674c492e0cd5019006c64ed1fa32">00185</a> <span class="preprocessor">#define U_ICUDATA_NAME    "icudt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER</span>
<a name="l00186"></a>00186 <span class="preprocessor"></span>
<a name="l00187"></a>00187 
<a name="l00199"></a><a class="code" href="utypes_8h.html#1d160c8ac5758feae64eccf08557d9e5">00199</a> <span class="preprocessor">#define U_ICUDATA_ENTRY_POINT  U_DEF2_ICUDATA_ENTRY_POINT(U_ICU_VERSION_MAJOR_NUM, U_ICU_VERSION_MINOR_NUM)</span>
<a name="l00200"></a>00200 <span class="preprocessor"></span>
<a name="l00205"></a><a class="code" href="utypes_8h.html#24ed1c481bf131937c2bd505119aebc0">00205</a> <span class="preprocessor">#define U_DEF2_ICUDATA_ENTRY_POINT(major, minor) U_DEF_ICUDATA_ENTRY_POINT(major, minor)</span>
<a name="l00206"></a>00206 <span class="preprocessor"></span>
<a name="l00210"></a><a class="code" href="utypes_8h.html#7ec71c08c0f02f795466b82c12c91426">00210</a> <span class="preprocessor">#define U_DEF_ICUDATA_ENTRY_POINT(major, minor) icudt##major##minor##_dat</span>
<a name="l00211"></a>00211 <span class="preprocessor"></span>
<a name="l00223"></a>00223 <span class="preprocessor">#if defined(OS390) &amp;&amp; (__COMPILER_VER__ &lt; 0x41020000) &amp;&amp; defined(XP_CPLUSPLUS)</span>
<a name="l00224"></a>00224 <span class="preprocessor"></span><span class="preprocessor">#    define U_CALLCONV __cdecl</span>
<a name="l00225"></a>00225 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00226"></a><a class="code" href="utypes_8h.html#1fae478cb5a46c7e4a0673d267626696">00226</a> <span class="preprocessor"></span><span class="preprocessor">#    define U_CALLCONV U_EXPORT2</span>
<a name="l00227"></a>00227 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00228"></a>00228 <span class="preprocessor"></span>
<a name="l00234"></a>00234 <span class="preprocessor">#ifndef NULL</span>
<a name="l00235"></a>00235 <span class="preprocessor"></span><span class="preprocessor">#ifdef XP_CPLUSPLUS</span>
<a name="l00236"></a>00236 <span class="preprocessor"></span><span class="preprocessor">#define NULL    0</span>
<a name="l00237"></a>00237 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00238"></a><a class="code" href="utypes_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">00238</a> <span class="preprocessor"></span><span class="preprocessor">#define NULL    ((void *)0)</span>
<a name="l00239"></a>00239 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00240"></a>00240 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00241"></a>00241 <span class="preprocessor"></span>
<a name="l00242"></a>00242 <span class="comment">/*===========================================================================*/</span>
<a name="l00243"></a>00243 <span class="comment">/* Calendar/TimeZone data types                                              */</span>
<a name="l00244"></a>00244 <span class="comment">/*===========================================================================*/</span>
<a name="l00245"></a>00245 
<a name="l00253"></a><a class="code" href="utypes_8h.html#ce1704e9e77d407d1eaaa2e73ec0c039">00253</a> <span class="keyword">typedef</span> <span class="keywordtype">double</span> <a class="code" href="utypes_8h.html#ce1704e9e77d407d1eaaa2e73ec0c039">UDate</a>;
<a name="l00254"></a>00254 
<a name="l00256"></a><a class="code" href="utypes_8h.html#38068d79565f22b0f14ff562f2fb5b19">00256</a> <span class="preprocessor">#define U_MILLIS_PER_SECOND        (1000)</span>
<a name="l00257"></a>00257 <span class="preprocessor"></span>
<a name="l00258"></a><a class="code" href="utypes_8h.html#abc4b1495952bc1ad9707930dd4562b0">00258</a> <span class="preprocessor">#define U_MILLIS_PER_MINUTE       (60000)</span>
<a name="l00259"></a>00259 <span class="preprocessor"></span>
<a name="l00260"></a><a class="code" href="utypes_8h.html#da7332e7606334a9c09e510862f1b80e">00260</a> <span class="preprocessor">#define U_MILLIS_PER_HOUR       (3600000)</span>
<a name="l00261"></a>00261 <span class="preprocessor"></span>
<a name="l00262"></a><a class="code" href="utypes_8h.html#d0729b7981555063c58da3cc3969dc33">00262</a> <span class="preprocessor">#define U_MILLIS_PER_DAY       (86400000)</span>
<a name="l00263"></a>00263 <span class="preprocessor"></span>
<a name="l00264"></a>00264 
<a name="l00265"></a>00265 <span class="comment">/*===========================================================================*/</span>
<a name="l00266"></a>00266 <span class="comment">/* UClassID-based RTTI */</span>
<a name="l00267"></a>00267 <span class="comment">/*===========================================================================*/</span>
<a name="l00268"></a>00268 
<a name="l00311"></a><a class="code" href="utypes_8h.html#22af10545208a455a6e884008df48e9f">00311</a> <span class="keyword">typedef</span> <span class="keywordtype">void</span>* <a class="code" href="utypes_8h.html#22af10545208a455a6e884008df48e9f">UClassID</a>;
<a name="l00312"></a>00312 
<a name="l00313"></a>00313 <span class="comment">/*===========================================================================*/</span>
<a name="l00314"></a>00314 <span class="comment">/* Shared library/DLL import-export API control                              */</span>
<a name="l00315"></a>00315 <span class="comment">/*===========================================================================*/</span>
<a name="l00316"></a>00316 
<a name="l00317"></a>00317 <span class="comment">/*</span>
<a name="l00318"></a>00318 <span class="comment"> * Control of symbol import/export.</span>
<a name="l00319"></a>00319 <span class="comment"> * ICU is separated into three libraries.</span>
<a name="l00320"></a>00320 <span class="comment"> */</span>
<a name="l00321"></a>00321 
<a name="l00322"></a>00322 <span class="comment">/*</span>
<a name="l00323"></a>00323 <span class="comment"> * \def U_COMBINED_IMPLEMENTATION</span>
<a name="l00324"></a>00324 <span class="comment"> * Set to export library symbols from inside the ICU library</span>
<a name="l00325"></a>00325 <span class="comment"> * when all of ICU is in a single library.</span>
<a name="l00326"></a>00326 <span class="comment"> * This can be set as a compiler option while building ICU, and it</span>
<a name="l00327"></a>00327 <span class="comment"> * needs to be the first one tested to override U_COMMON_API, U_I18N_API, etc.</span>
<a name="l00328"></a>00328 <span class="comment"> * @stable ICU 2.0</span>
<a name="l00329"></a>00329 <span class="comment"> */</span>
<a name="l00330"></a>00330 
<a name="l00380"></a>00380 <span class="preprocessor">#if defined(U_COMBINED_IMPLEMENTATION)</span>
<a name="l00381"></a>00381 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_EXPORT</span>
<a name="l00382"></a>00382 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_EXPORT</span>
<a name="l00383"></a>00383 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_EXPORT</span>
<a name="l00384"></a>00384 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_EXPORT</span>
<a name="l00385"></a>00385 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_EXPORT</span>
<a name="l00386"></a>00386 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_EXPORT</span>
<a name="l00387"></a>00387 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_EXPORT</span>
<a name="l00388"></a>00388 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_STATIC_IMPLEMENTATION)</span>
<a name="l00389"></a>00389 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API</span>
<a name="l00390"></a>00390 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API</span>
<a name="l00391"></a>00391 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API</span>
<a name="l00392"></a>00392 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API</span>
<a name="l00393"></a>00393 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API</span>
<a name="l00394"></a>00394 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API</span>
<a name="l00395"></a>00395 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API</span>
<a name="l00396"></a>00396 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_COMMON_IMPLEMENTATION)</span>
<a name="l00397"></a>00397 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00398"></a>00398 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_EXPORT</span>
<a name="l00399"></a>00399 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00400"></a>00400 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00401"></a>00401 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00402"></a>00402 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00403"></a>00403 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00404"></a>00404 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_I18N_IMPLEMENTATION)</span>
<a name="l00405"></a>00405 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00406"></a>00406 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00407"></a>00407 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_EXPORT</span>
<a name="l00408"></a>00408 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00409"></a>00409 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00410"></a>00410 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00411"></a>00411 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00412"></a>00412 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_LAYOUT_IMPLEMENTATION)</span>
<a name="l00413"></a>00413 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00414"></a>00414 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00415"></a>00415 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00416"></a>00416 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_EXPORT</span>
<a name="l00417"></a>00417 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00418"></a>00418 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00419"></a>00419 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00420"></a>00420 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_LAYOUTEX_IMPLEMENTATION)</span>
<a name="l00421"></a>00421 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00422"></a>00422 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00423"></a>00423 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00424"></a>00424 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00425"></a>00425 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_EXPORT</span>
<a name="l00426"></a>00426 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00427"></a>00427 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00428"></a>00428 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_IO_IMPLEMENTATION)</span>
<a name="l00429"></a>00429 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00430"></a>00430 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00431"></a>00431 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00432"></a>00432 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00433"></a>00433 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00434"></a>00434 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_EXPORT</span>
<a name="l00435"></a>00435 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00436"></a>00436 <span class="preprocessor"></span><span class="preprocessor">#elif defined(U_TOOLUTIL_IMPLEMENTATION)</span>
<a name="l00437"></a>00437 <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00438"></a>00438 <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00439"></a>00439 <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00440"></a>00440 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00441"></a>00441 <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00442"></a>00442 <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00443"></a>00443 <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_EXPORT</span>
<a name="l00444"></a>00444 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00445"></a><a class="code" href="utypes_8h.html#12732929e67c6d977b94c68c8911ae21">00445</a> <span class="preprocessor"></span><span class="preprocessor">#define U_DATA_API     U_IMPORT</span>
<a name="l00446"></a><a class="code" href="utypes_8h.html#559955ec3bc692657c5d8b1c6de8e334">00446</a> <span class="preprocessor"></span><span class="preprocessor">#define U_COMMON_API   U_IMPORT</span>
<a name="l00447"></a><a class="code" href="utypes_8h.html#b9d90a30137b6ec046fe59e79b09745a">00447</a> <span class="preprocessor"></span><span class="preprocessor">#define U_I18N_API     U_IMPORT</span>
<a name="l00448"></a><a class="code" href="utypes_8h.html#623f81640d6092d9141a1d4d24ccaffc">00448</a> <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUT_API   U_IMPORT</span>
<a name="l00449"></a><a class="code" href="utypes_8h.html#29c71565364a6e97d98b45c4e928d567">00449</a> <span class="preprocessor"></span><span class="preprocessor">#define U_LAYOUTEX_API U_IMPORT</span>
<a name="l00450"></a><a class="code" href="utypes_8h.html#845bce6fe50083b4fc9c890286aa509e">00450</a> <span class="preprocessor"></span><span class="preprocessor">#define U_IO_API       U_IMPORT</span>
<a name="l00451"></a><a class="code" href="utypes_8h.html#a03f48d3ba4dd985dcde4d6c0e5b2d07">00451</a> <span class="preprocessor"></span><span class="preprocessor">#define U_TOOLUTIL_API U_IMPORT</span>
<a name="l00452"></a>00452 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00453"></a>00453 <span class="preprocessor"></span>
<a name="l00459"></a>00459 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00460"></a>00460 <span class="preprocessor"></span><span class="preprocessor">#define U_STANDARD_CPP_NAMESPACE        ::</span>
<a name="l00461"></a>00461 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00462"></a><a class="code" href="utypes_8h.html#13b45bffcfdecc8f549963443b5aeac9">00462</a> <span class="preprocessor"></span><span class="preprocessor">#define U_STANDARD_CPP_NAMESPACE</span>
<a name="l00463"></a>00463 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00464"></a>00464 <span class="preprocessor"></span>
<a name="l00465"></a>00465 
<a name="l00466"></a>00466 <span class="comment">/*===========================================================================*/</span>
<a name="l00467"></a>00467 <span class="comment">/* Global delete operator                                                    */</span>
<a name="l00468"></a>00468 <span class="comment">/*===========================================================================*/</span>
<a name="l00469"></a>00469 
<a name="l00470"></a>00470 <span class="comment">/*</span>
<a name="l00471"></a>00471 <span class="comment"> * The ICU4C library must not use the global new and delete operators.</span>
<a name="l00472"></a>00472 <span class="comment"> * These operators here are defined to enable testing for this.</span>
<a name="l00473"></a>00473 <span class="comment"> * See Jitterbug 2581 for details of why this is necessary.</span>
<a name="l00474"></a>00474 <span class="comment"> *</span>
<a name="l00475"></a>00475 <span class="comment"> * Verification that ICU4C's memory usage is correct, i.e.,</span>
<a name="l00476"></a>00476 <span class="comment"> * that global new/delete are not used:</span>
<a name="l00477"></a>00477 <span class="comment"> *</span>
<a name="l00478"></a>00478 <span class="comment"> * a) Check for imports of global new/delete (see uobject.cpp for details)</span>
<a name="l00479"></a>00479 <span class="comment"> * b) Verify that new is never imported.</span>
<a name="l00480"></a>00480 <span class="comment"> * c) Verify that delete is only imported from object code for interface/mixin classes.</span>
<a name="l00481"></a>00481 <span class="comment"> * d) Add global delete and delete[] only for the ICU4C library itself</span>
<a name="l00482"></a>00482 <span class="comment"> *    and define them in a way that crashes or otherwise easily shows a problem.</span>
<a name="l00483"></a>00483 <span class="comment"> *</span>
<a name="l00484"></a>00484 <span class="comment"> * The following implements d).</span>
<a name="l00485"></a>00485 <span class="comment"> * The operator implementations crash; this is intentional and used for library debugging.</span>
<a name="l00486"></a>00486 <span class="comment"> *</span>
<a name="l00487"></a>00487 <span class="comment"> * Note: This is currently only done on Windows because</span>
<a name="l00488"></a>00488 <span class="comment"> * some Linux/Unix compilers have problems with defining global new/delete.</span>
<a name="l00489"></a>00489 <span class="comment"> * On Windows, U_WINDOWS is defined, and it is _MSC_VER&gt;=1200 for MSVC 6.0 and higher.</span>
<a name="l00490"></a>00490 <span class="comment"> */</span>
<a name="l00491"></a>00491 <span class="preprocessor">#if defined(XP_CPLUSPLUS) &amp;&amp; defined(U_WINDOWS) &amp;&amp; U_DEBUG &amp;&amp; U_OVERRIDE_CXX_ALLOCATION &amp;&amp; (_MSC_VER&gt;=1200) &amp;&amp; !defined(U_STATIC_IMPLEMENTATION) &amp;&amp; (defined(U_COMMON_IMPLEMENTATION) || defined(U_I18N_IMPLEMENTATION) || defined(U_IO_IMPLEMENTATION) || defined(U_LAYOUT_IMPLEMENTATION) || defined(U_LAYOUTEX_IMPLEMENTATION))</span>
<a name="l00492"></a>00492 <span class="preprocessor"></span>
<a name="l00493"></a>00493 <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span>
<a name="l00494"></a>00494 <span class="preprocessor"></span>
<a name="l00499"></a>00499 <span class="keyword">inline</span> <span class="keywordtype">void</span> *
<a name="l00500"></a>00500 operator new(size_t <span class="comment">/*size*/</span>) {
<a name="l00501"></a>00501     <span class="keywordtype">char</span> *q=<a class="code" href="utypes_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;
<a name="l00502"></a>00502     *q=5; <span class="comment">/* break it */</span>
<a name="l00503"></a>00503     <span class="keywordflow">return</span> q;
<a name="l00504"></a>00504 }
<a name="l00505"></a>00505 
<a name="l00511"></a>00511 <span class="keyword">inline</span> <span class="keywordtype">void</span> *
<a name="l00512"></a>00512 operator new[](size_t <span class="comment">/*size*/</span>) {
<a name="l00513"></a>00513     <span class="keywordtype">char</span> *q=<a class="code" href="utypes_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;
<a name="l00514"></a>00514     *q=5; <span class="comment">/* break it */</span>
<a name="l00515"></a>00515     <span class="keywordflow">return</span> q;
<a name="l00516"></a>00516 }
<a name="l00517"></a>00517 
<a name="l00523"></a>00523 <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00524"></a>00524 operator delete(<span class="keywordtype">void</span> * <span class="comment">/*p*/</span>) {
<a name="l00525"></a>00525     <span class="keywordtype">char</span> *q=<a class="code" href="utypes_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;
<a name="l00526"></a>00526     *q=5; <span class="comment">/* break it */</span>
<a name="l00527"></a>00527 }
<a name="l00528"></a>00528 
<a name="l00534"></a>00534 <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00535"></a>00535 operator delete[](<span class="keywordtype">void</span> * <span class="comment">/*p*/</span>) {
<a name="l00536"></a>00536     <span class="keywordtype">char</span> *q=<a class="code" href="utypes_8h.html#070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;
<a name="l00537"></a>00537     *q=5; <span class="comment">/* break it */</span>
<a name="l00538"></a>00538 }
<a name="l00539"></a>00539 
<a name="l00540"></a>00540 <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span>
<a name="l00541"></a>00541 <span class="preprocessor">#endif</span>
<a name="l00542"></a>00542 <span class="preprocessor"></span>
<a name="l00543"></a>00543 <span class="comment">/*===========================================================================*/</span>
<a name="l00544"></a>00544 <span class="comment">/* UErrorCode */</span>
<a name="l00545"></a>00545 <span class="comment">/*===========================================================================*/</span>
<a name="l00546"></a>00546 
<a name="l00561"></a><a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">00561</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> {
<a name="l00562"></a>00562     <span class="comment">/* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird</span>
<a name="l00563"></a>00563 <span class="comment">     * and is that way because VC++ debugger displays first encountered constant,</span>
<a name="l00564"></a>00564 <span class="comment">     * which is not the what the code is used for</span>
<a name="l00565"></a>00565 <span class="comment">     */</span>
<a name="l00566"></a>00566 
<a name="l00567"></a>00567     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd5587ac25f5b1f340bed0ed09d45d77f">U_USING_FALLBACK_WARNING</a>  = -128,   
<a name="l00569"></a>00569     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ccfc1c1bb23eb007f8a61b966ae58da08">U_ERROR_WARNING_START</a>     = -128,   
<a name="l00571"></a>00571     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ced8d36a0afbe3e5a2242f0005fcfad84">U_USING_DEFAULT_WARNING</a>   = -127,   
<a name="l00573"></a>00573     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c5bb41deb082d216dd5315e29f2727405">U_SAFECLONE_ALLOCATED_WARNING</a> = -126, 
<a name="l00575"></a>00575     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ce0626ff8bde8f7f0106562a89ef2ea72">U_STATE_OLD_WARNING</a>       = -125,   
<a name="l00577"></a>00577     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c34815fae03bafa4b3dd9685489f1c8d8">U_STRING_NOT_TERMINATED_WARNING</a> = -124,
<a name="l00579"></a>00579     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c78081263df2c8503a63084605098ee3e">U_SORT_KEY_TOO_SHORT_WARNING</a> = -123, 
<a name="l00581"></a>00581     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c90c95e7c0f281420f210a552baa7c13d">U_AMBIGUOUS_ALIAS_WARNING</a> = -122,   
<a name="l00583"></a>00583     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cb2163a7cc546a28c1f4c78aff39c99a2">U_DIFFERENT_UCA_VERSION</a> = -121,     
<a name="l00585"></a>00585     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ce2073a8ed9011fdcf255a26f11a624b2">U_ERROR_WARNING_LIMIT</a>,              
<a name="l00588"></a>00588     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>              =  0,     
<a name="l00590"></a>00590     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>  =  1,     
<a name="l00591"></a>00591     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c170fabb40612097923596f80536a07b7">U_MISSING_RESOURCE_ERROR</a>  =  2,     
<a name="l00592"></a>00592     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c3b2830761371670dcbe807353eba2b6a">U_INVALID_FORMAT_ERROR</a>    =  3,     
<a name="l00593"></a>00593     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c620c910f69c3f27151ce5b1215a8662a">U_FILE_ACCESS_ERROR</a>       =  4,     
<a name="l00594"></a>00594     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca982af5a82abf1560473c7531f30a2a8">U_INTERNAL_PROGRAM_ERROR</a>  =  5,     
<a name="l00595"></a>00595     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c48ad88b7be07ab3e2ad9110195e18afc">U_MESSAGE_PARSE_ERROR</a>     =  6,     
<a name="l00596"></a>00596     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c243253eeb4885e17158b876849063269">U_MEMORY_ALLOCATION_ERROR</a> =  7,     
<a name="l00597"></a>00597     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c80c72dc6aa73be1a0ea6586a6ab8d73d">U_INDEX_OUTOFBOUNDS_ERROR</a> =  8,     
<a name="l00598"></a>00598     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cc45cee739cf5ac404a09ee6555f28881">U_PARSE_ERROR</a>             =  9,     
<a name="l00599"></a>00599     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ce502473abb14aca98816038f02050abe">U_INVALID_CHAR_FOUND</a>      = 10,     
<a name="l00600"></a>00600     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf0c13ee36e89774c7056360b81c76caf">U_TRUNCATED_CHAR_FOUND</a>    = 11,     
<a name="l00601"></a>00601     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c616dcef9e839f1f7d2b15d9ad300f7e7">U_ILLEGAL_CHAR_FOUND</a>      = 12,     
<a name="l00602"></a>00602     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cb1b46153d94ce20a3cac0b6c9550963b">U_INVALID_TABLE_FORMAT</a>    = 13,     
<a name="l00603"></a>00603     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c2137af5bb9737b75855f7079d2b35706">U_INVALID_TABLE_FILE</a>      = 14,     
<a name="l00604"></a>00604     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c294424f5f497a3161ed08b63ac962135">U_BUFFER_OVERFLOW_ERROR</a>   = 15,     
<a name="l00605"></a>00605     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>       = 16,     
<a name="l00606"></a>00606     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c7cd9d3af8106c1b382989157231c0665">U_RESOURCE_TYPE_MISMATCH</a>  = 17,     
<a name="l00607"></a>00607     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ce769daf822521fe8d36b8749246b9f44">U_ILLEGAL_ESCAPE_SEQUENCE</a> = 18,     
<a name="l00608"></a>00608     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c16db18ca778f2592b98780dc7a18d759">U_UNSUPPORTED_ESCAPE_SEQUENCE</a> = 19, 
<a name="l00609"></a>00609     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ceac8862f7c2a47173a69908dcc1f42ea">U_NO_SPACE_AVAILABLE</a>      = 20,     
<a name="l00610"></a>00610     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c50a9aa38bb45d5a82b8e08896f45b27c">U_CE_NOT_FOUND_ERROR</a>      = 21,     
<a name="l00611"></a>00611     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c9a7178629da59c629b17814c2ec99f77">U_PRIMARY_TOO_LONG_ERROR</a>  = 22,     
<a name="l00612"></a>00612     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c70eacab52e96e3dea2d6b3a141751cd1">U_STATE_TOO_OLD_ERROR</a>     = 23,     
<a name="l00613"></a>00613     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c6cd747442c17866090e3c3994d49d3fa">U_TOO_MANY_ALIASES_ERROR</a>  = 24,     
<a name="l00615"></a>00615     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf1014aa7aa1eec9e3f905384749c7545">U_ENUM_OUT_OF_SYNC_ERROR</a>  = 25,     
<a name="l00616"></a>00616     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c97525a3511b2c591162ed77701199bbe">U_INVARIANT_CONVERSION_ERROR</a> = 26,  
<a name="l00617"></a>00617     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c790a28fc945834604e4427c43ec4d44f">U_INVALID_STATE_ERROR</a>     = 27,     
<a name="l00618"></a>00618     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c8352f1cee5f89b40b5aded225a593464">U_COLLATOR_VERSION_MISMATCH</a> = 28,   
<a name="l00619"></a>00619     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c581795b7e78afdef483a5d40fb375cde">U_USELESS_COLLATOR_ERROR</a>  = 29,     
<a name="l00620"></a>00620     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c3913819239c9825d3b3bb6a0cb1d0a28">U_NO_WRITE_PERMISSION</a>     = 30,     
<a name="l00622"></a>00622     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cc95be10a0360afc8388874d592bd4074">U_STANDARD_ERROR_LIMIT</a>,             
<a name="l00623"></a>00623     <span class="comment">/*</span>
<a name="l00624"></a>00624 <span class="comment">     * the error code range 0x10000 0x10100 are reserved for Transliterator</span>
<a name="l00625"></a>00625 <span class="comment">     */</span>
<a name="l00626"></a>00626     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c50abf3ccf88eac601ca09bf61a481ab0">U_BAD_VARIABLE_DEFINITION</a>=0x10000,
<a name="l00627"></a>00627     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cec7ea07e89fe6a730ce09a8f6809db7e">U_PARSE_ERROR_START</a> = 0x10000,    
<a name="l00628"></a>00628     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf8f95e1a86910196fe3a0e5035be261b">U_MALFORMED_RULE</a>,                 
<a name="l00629"></a>00629     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cc9f1e99ef167efb2c2c5ff3275d5dc96">U_MALFORMED_SET</a>,                  
<a name="l00630"></a>00630     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c51b7ac271c05ab7ebb542b9fbc0ce1e8">U_MALFORMED_SYMBOL_REFERENCE</a>,     
<a name="l00631"></a>00631     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd2fdf57ac1e600a0df82c2f291b09cd1">U_MALFORMED_UNICODE_ESCAPE</a>,       
<a name="l00632"></a>00632     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c106338b0bffa6a9ea609b71248875c11">U_MALFORMED_VARIABLE_DEFINITION</a>,  
<a name="l00633"></a>00633     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca4c1301c8a9be1f8702cf23ecf368278">U_MALFORMED_VARIABLE_REFERENCE</a>,   
<a name="l00634"></a>00634     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c10b78ae0d07d5a8e26c6b9e456e811f4">U_MISMATCHED_SEGMENT_DELIMITERS</a>,  
<a name="l00635"></a>00635     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c00aec83ccfff4956f935ccf38b12b29a">U_MISPLACED_ANCHOR_START</a>,         
<a name="l00636"></a>00636     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf882f276381c050b003d6362dbb5058b">U_MISPLACED_CURSOR_OFFSET</a>,        
<a name="l00637"></a>00637     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c30d5acd21c9ecbc8f730a41699c199ca">U_MISPLACED_QUANTIFIER</a>,           
<a name="l00638"></a>00638     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd87737926f4b233af6ce9565bfa81a1c">U_MISSING_OPERATOR</a>,               
<a name="l00639"></a>00639     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cdc9ce9558c209821a9d7659e6b229733">U_MISSING_SEGMENT_CLOSE</a>,          
<a name="l00640"></a>00640     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c707c6061ad56bba1f743b53881e44a5e">U_MULTIPLE_ANTE_CONTEXTS</a>,         
<a name="l00641"></a>00641     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ce372e7e28fb47cca90da238d59ce0793">U_MULTIPLE_CURSORS</a>,               
<a name="l00642"></a>00642     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c86d28c53aa7b81b97bcd1eabcbd9cf5c">U_MULTIPLE_POST_CONTEXTS</a>,         
<a name="l00643"></a>00643     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c443d8966c7e15de3d94abf88d29d2beb">U_TRAILING_BACKSLASH</a>,             
<a name="l00644"></a>00644     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c41a94a1720054961f1017c66bd26628d">U_UNDEFINED_SEGMENT_REFERENCE</a>,    
<a name="l00645"></a>00645     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cc995e7e9423963fd341fd7ec03578e91">U_UNDEFINED_VARIABLE</a>,             
<a name="l00646"></a>00646     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c750906a142c04e162ea5bb6167411f1a">U_UNQUOTED_SPECIAL</a>,               
<a name="l00647"></a>00647     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c5d7fb2a6ceb9425e787380c06932b721">U_UNTERMINATED_QUOTE</a>,             
<a name="l00648"></a>00648     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c64deab5ad883d0b98f4e34a003cdee74">U_RULE_MASK_ERROR</a>,                
<a name="l00649"></a>00649     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c29c6b7710dd0b2b8994e17da66f89e5f">U_MISPLACED_COMPOUND_FILTER</a>,      
<a name="l00650"></a>00650     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd892b393c258949c152eb3eff308c68b">U_MULTIPLE_COMPOUND_FILTERS</a>,      
<a name="l00651"></a>00651     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ccf6fe18f0d25f256620ce4ac2a387e46">U_INVALID_RBT_SYNTAX</a>,             
<a name="l00652"></a>00652     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c9fa5da278a2680afcb071ead158ab95d">U_INVALID_PROPERTY_PATTERN</a>,       
<a name="l00653"></a>00653     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c514841a426025a6957b6d11ea207a754">U_MALFORMED_PRAGMA</a>,               
<a name="l00654"></a>00654     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cae4a595a231d975465c645adbd39a57c">U_UNCLOSED_SEGMENT</a>,               
<a name="l00655"></a>00655     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cbd5b105dae090d5fa649bff207d38c37">U_ILLEGAL_CHAR_IN_SEGMENT</a>,        
<a name="l00656"></a>00656     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c2de147d1b7be08244899c3e1daeda686">U_VARIABLE_RANGE_EXHAUSTED</a>,       
<a name="l00657"></a>00657     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf58b05f041edd7c47bc4e348648ac0b1">U_VARIABLE_RANGE_OVERLAP</a>,         
<a name="l00658"></a>00658     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c7b8a758591ac2fba23bc089daf461d85">U_ILLEGAL_CHARACTER</a>,              
<a name="l00659"></a>00659     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c5565ed94e6edc7c5bc91344c021cb22f">U_INTERNAL_TRANSLITERATOR_ERROR</a>,  
<a name="l00660"></a>00660     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c30e61bc30bde484b10be863ed95f6bc6">U_INVALID_ID</a>,                     
<a name="l00661"></a>00661     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca07903569836a4303ce25e16ca26487b">U_INVALID_FUNCTION</a>,               
<a name="l00662"></a>00662     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c7c3149ecac825fdea24fe3bd6bc097c2">U_PARSE_ERROR_LIMIT</a>,              
<a name="l00664"></a>00664     <span class="comment">/*</span>
<a name="l00665"></a>00665 <span class="comment">     * the error code range 0x10100 0x10200 are reserved for formatting API parsing error</span>
<a name="l00666"></a>00666 <span class="comment">     */</span>
<a name="l00667"></a>00667     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c5fe9c6fff314fa4216c3620f0c0a3e3e">U_UNEXPECTED_TOKEN</a>=0x10100,       
<a name="l00668"></a>00668     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c1543d02dfce2f7b01b57ad882c65c470">U_FMT_PARSE_ERROR_START</a>=0x10100,  
<a name="l00669"></a>00669     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78caebc292d3c792264512d92d54975b98e">U_MULTIPLE_DECIMAL_SEPARATORS</a>,    
<a name="l00670"></a>00670     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cbdd40525be1960330852363dcead1f1b">U_MULTIPLE_DECIMAL_SEPERATORS</a> = <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78caebc292d3c792264512d92d54975b98e">U_MULTIPLE_DECIMAL_SEPARATORS</a>, 
<a name="l00671"></a>00671     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca4bca1e41f3f5326ccd942a870ed84db">U_MULTIPLE_EXPONENTIAL_SYMBOLS</a>,   
<a name="l00672"></a>00672     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cda16431d7e64fb0fbf33dd243f98c53d">U_MALFORMED_EXPONENTIAL_PATTERN</a>,  
<a name="l00673"></a>00673     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c17f25ea678b6c7a708c9d4375799c383">U_MULTIPLE_PERCENT_SYMBOLS</a>,       
<a name="l00674"></a>00674     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c7ee91a3227e15a738068609836f6c12d">U_MULTIPLE_PERMILL_SYMBOLS</a>,       
<a name="l00675"></a>00675     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c619fdb4d123a8db36dc0a4de49a5e77e">U_MULTIPLE_PAD_SPECIFIERS</a>,        
<a name="l00676"></a>00676     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c94bdd0fcb81e66c9a35e012266490748">U_PATTERN_SYNTAX_ERROR</a>,           
<a name="l00677"></a>00677     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c0780797f658a0ce7d6bfea272bf83277">U_ILLEGAL_PAD_POSITION</a>,           
<a name="l00678"></a>00678     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cb0996404b555df6f27b3df22b585824b">U_UNMATCHED_BRACES</a>,               
<a name="l00679"></a>00679     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c38f8cd32b3ee005b378bac6041143279">U_UNSUPPORTED_PROPERTY</a>,           
<a name="l00680"></a>00680     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cca32851eb79fc23c4c317bdc6a6b9c76">U_UNSUPPORTED_ATTRIBUTE</a>,          
<a name="l00681"></a>00681     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c0de6e0b25ba1af9b5e5197a104a86c94">U_FMT_PARSE_ERROR_LIMIT</a>,          
<a name="l00683"></a>00683     <span class="comment">/*</span>
<a name="l00684"></a>00684 <span class="comment">     * the error code range 0x10200 0x102ff are reserved for Break Iterator related error</span>
<a name="l00685"></a>00685 <span class="comment">     */</span>
<a name="l00686"></a>00686     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c8ebaa33af906deb1919c154f6ecc8bac">U_BRK_INTERNAL_ERROR</a>=0x10200,          
<a name="l00687"></a>00687     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca04c56bb85e8c660a149af213a1c16eb">U_BRK_ERROR_START</a>=0x10200,             
<a name="l00688"></a>00688     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c95f5e504e28e34d8c1961ea3554b859c">U_BRK_HEX_DIGITS_EXPECTED</a>,             
<a name="l00689"></a>00689     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd1a561a593cae45f0870feeb5d533e76">U_BRK_SEMICOLON_EXPECTED</a>,              
<a name="l00690"></a>00690     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd9eb5f57e3ce0ae1513c6af6e9a7f26d">U_BRK_RULE_SYNTAX</a>,                     
<a name="l00691"></a>00691     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c9ae495564696e360a64e69c04e328d19">U_BRK_UNCLOSED_SET</a>,                    
<a name="l00692"></a>00692     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c90f9350c9815ac1753fa6ecfcfa72202">U_BRK_ASSIGN_ERROR</a>,                    
<a name="l00693"></a>00693     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c5af6b7b2ac5a0bf9b766d0d0dbce5391">U_BRK_VARIABLE_REDFINITION</a>,            
<a name="l00694"></a>00694     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c786bd587116eb657a1c17df1820b5c77">U_BRK_MISMATCHED_PAREN</a>,                
<a name="l00695"></a>00695     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cbb5958d9fedfdc8755a0e3d6eb60fa9c">U_BRK_NEW_LINE_IN_QUOTED_STRING</a>,       
<a name="l00696"></a>00696     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c6917c38c966be30c57455247bf7ae98f">U_BRK_UNDEFINED_VARIABLE</a>,              
<a name="l00697"></a>00697     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c86b9d24bf7bc48f6ebfd9ee76f2dd406">U_BRK_INIT_ERROR</a>,                      
<a name="l00698"></a>00698     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c4b5d04fbb22a826e56112cf743cce449">U_BRK_RULE_EMPTY_SET</a>,                  
<a name="l00699"></a>00699     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c46c8330d5d1ee0b6d1248536a3ca963d">U_BRK_UNRECOGNIZED_OPTION</a>,             
<a name="l00700"></a>00700     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf85f658b26f83d683de3cd0d943c2435">U_BRK_MALFORMED_RULE_TAG</a>,              
<a name="l00701"></a>00701     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c6f7028fcc27d5e583873df027be17718">U_BRK_ERROR_LIMIT</a>,                     
<a name="l00703"></a>00703     <span class="comment">/*</span>
<a name="l00704"></a>00704 <span class="comment">     * The error codes in the range 0x10300-0x103ff are reserved for regular expression related errrs</span>
<a name="l00705"></a>00705 <span class="comment">     */</span>
<a name="l00706"></a>00706     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c30d5e3ae5f9c11e5adcc0a15f6600981">U_REGEX_INTERNAL_ERROR</a>=0x10300,       
<a name="l00707"></a>00707     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ccbde4696a63fa1ab358131b7148461dd">U_REGEX_ERROR_START</a>=0x10300,          
<a name="l00708"></a>00708     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca29705b19e5107222d9dd481342860fd">U_REGEX_RULE_SYNTAX</a>,                  
<a name="l00709"></a>00709     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cdf17d183789528d9f02bba60b698590a">U_REGEX_INVALID_STATE</a>,                
<a name="l00710"></a>00710     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c06679e78947417e52a12cbe1f1b1df29">U_REGEX_BAD_ESCAPE_SEQUENCE</a>,          
<a name="l00711"></a>00711     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c217a040cc2a3757a5821232989659267">U_REGEX_PROPERTY_SYNTAX</a>,              
<a name="l00712"></a>00712     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c299b06abcbff1d470222e6f1522a6dac">U_REGEX_UNIMPLEMENTED</a>,                
<a name="l00713"></a>00713     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c87ea0641eb620d9a20f2a760a092089d">U_REGEX_MISMATCHED_PAREN</a>,             
<a name="l00714"></a>00714     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c78073885b5f48f21fe1daf1e1a782300">U_REGEX_NUMBER_TOO_BIG</a>,               
<a name="l00715"></a>00715     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cfca17e0e28b27701b8adebe9cb379960">U_REGEX_BAD_INTERVAL</a>,                 
<a name="l00716"></a>00716     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cedaeec4f630c43294cf59422d15e811d">U_REGEX_MAX_LT_MIN</a>,                   
<a name="l00717"></a>00717     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c6c6c9f669dc9210f2dc7161d7925cda8">U_REGEX_INVALID_BACK_REF</a>,             
<a name="l00718"></a>00718     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cd34950bf8a463d7e819e682b1d178cf6">U_REGEX_INVALID_FLAG</a>,                 
<a name="l00719"></a>00719     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c03eb7cf44e4e79ef3c4368a3297c8069">U_REGEX_LOOK_BEHIND_LIMIT</a>,            
<a name="l00720"></a>00720     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cf2b434e65a7d60093d9160f8c53375d4">U_REGEX_SET_CONTAINS_STRING</a>,          
<a name="l00721"></a>00721     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78cabd1e7808122f0213e71412a7b7a2867">U_REGEX_ERROR_LIMIT</a>,                  
<a name="l00723"></a>00723     <span class="comment">/*</span>
<a name="l00724"></a>00724 <span class="comment">     * The error code in the range 0x10400-0x104ff are reserved for IDNA related error codes</span>
<a name="l00725"></a>00725 <span class="comment">     */</span>
<a name="l00726"></a>00726     U_IDNA_PROHIBITED_ERROR=0x10400,
<a name="l00727"></a>00727     U_IDNA_ERROR_START=0x10400,
<a name="l00728"></a>00728     U_IDNA_UNASSIGNED_ERROR,
<a name="l00729"></a>00729     U_IDNA_CHECK_BIDI_ERROR,
<a name="l00730"></a>00730     U_IDNA_STD3_ASCII_RULES_ERROR,
<a name="l00731"></a>00731     U_IDNA_ACE_PREFIX_ERROR,
<a name="l00732"></a>00732     U_IDNA_VERIFICATION_ERROR,
<a name="l00733"></a>00733     U_IDNA_LABEL_TOO_LONG_ERROR,
<a name="l00734"></a>00734     U_IDNA_ZERO_LENGTH_LABEL_ERROR,
<a name="l00735"></a>00735     U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR,
<a name="l00736"></a>00736     U_IDNA_ERROR_LIMIT,
<a name="l00737"></a>00737     <span class="comment">/*</span>
<a name="l00738"></a>00738 <span class="comment">     * Aliases for StringPrep</span>
<a name="l00739"></a>00739 <span class="comment">     */</span>
<a name="l00740"></a>00740     U_STRINGPREP_PROHIBITED_ERROR = U_IDNA_PROHIBITED_ERROR,
<a name="l00741"></a>00741     U_STRINGPREP_UNASSIGNED_ERROR = U_IDNA_UNASSIGNED_ERROR,
<a name="l00742"></a>00742     U_STRINGPREP_CHECK_BIDI_ERROR = U_IDNA_CHECK_BIDI_ERROR,
<a name="l00743"></a>00743 
<a name="l00744"></a>00744 
<a name="l00745"></a><a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c1ee60e67a1a4b175e00d0e9f0e449b52">00745</a>     <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c1ee60e67a1a4b175e00d0e9f0e449b52">U_ERROR_LIMIT</a>=U_IDNA_ERROR_LIMIT      
<a name="l00746"></a>00746 } <a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a>;
<a name="l00747"></a>00747 
<a name="l00748"></a>00748 <span class="comment">/* Use the following to determine if an UErrorCode represents */</span>
<a name="l00749"></a>00749 <span class="comment">/* operational success or failure. */</span>
<a name="l00750"></a>00750 
<a name="l00751"></a>00751 <span class="preprocessor">#ifdef XP_CPLUSPLUS</span>
<a name="l00752"></a>00752 <span class="preprocessor"></span>
<a name="l00756"></a>00756     <span class="keyword">static</span>
<a name="l00757"></a>00757     <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="utypes_8h.html#527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(<a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> code) { <span class="keywordflow">return</span> (<a class="code" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>)(code&lt;=<a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>); }
<a name="l00762"></a>00762     <span class="keyword">static</span>
<a name="l00763"></a>00763     <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="utypes_8h.html#4d202200b6aa6f3c965ea370e0c8155f">U_FAILURE</a>(<a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> code) { <span class="keywordflow">return</span> (<a class="code" href="umachine_8h.html#349ef00011f20ccd1d3b424445681aa5">UBool</a>)(code&gt;<a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78ca43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>); }
<a name="l00764"></a>00764 <span class="preprocessor">#else</span>
<a name="l00765"></a>00765 <span class="preprocessor"></span>
<a name="l00769"></a><a class="code" href="utypes_8h.html#527f2c69e6b2e3b2c53ad8a99fb36711">00769</a> <span class="preprocessor">#   define U_SUCCESS(x) ((x)&lt;=U_ZERO_ERROR)</span>
<a name="l00770"></a>00770 <span class="preprocessor"></span>
<a name="l00774"></a><a class="code" href="utypes_8h.html#4d202200b6aa6f3c965ea370e0c8155f">00774</a> <span class="preprocessor">#   define U_FAILURE(x) ((x)&gt;U_ZERO_ERROR)</span>
<a name="l00775"></a>00775 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00776"></a>00776 <span class="preprocessor"></span>
<a name="l00783"></a>00783 <a class="code" href="umachine_8h.html#f3e3799716eaa41e3f49c7bf18c62b98">U_STABLE</a> <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="platform_8h.html#72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a>
<a name="l00784"></a>00784 <a class="code" href="utypes_8h.html#89eb455526bb29bf5350ee861d81df92">u_errorName</a>(<a class="code" href="utypes_8h.html#3343c1c8a8377277046774691c98d78c">UErrorCode</a> code);
<a name="l00785"></a>00785 
<a name="l00786"></a>00786 
<a name="l00787"></a>00787 <span class="preprocessor">#endif </span><span class="comment">/* _UTYPES */</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Sep 14 12:59:21 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>