- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- Search for |

- File List
- Globals

# ucnv_err.h

Go to the documentation of this file.

    00001 /*
    00002 **********************************************************************
    00003 *   Copyright (C) 1999-2009, International Business Machines
    00004 *   Corporation and others.  All Rights Reserved.
    00005 **********************************************************************
    00006  *
    00007  *
    00008  *   ucnv_err.h:
    00009  */
    00010
    00083 #ifndef UCNV_ERR_H
    00084 #define UCNV_ERR_H
    00085
    00086 #include "unicode/utypes.h"
    00087
    00088 #if !UCONFIG_NO_CONVERSION
    00089
    00091 struct UConverter;
    00092
    00094 typedef struct UConverter UConverter;
    00095
    00100 #define UCNV_SUB_STOP_ON_ILLEGAL "i"
    00101
    00106 #define UCNV_SKIP_STOP_ON_ILLEGAL "i"
    00107
    00112 #define UCNV_ESCAPE_ICU       NULL
    00113
    00117 #define UCNV_ESCAPE_JAVA      "J"
    00118
    00123 #define UCNV_ESCAPE_C         "C"
    00124
    00129 #define UCNV_ESCAPE_XML_DEC   "D"
    00130
    00135 #define UCNV_ESCAPE_XML_HEX   "X"
    00136
    00140 #define UCNV_ESCAPE_UNICODE   "U"
    00141
    00147 #define UCNV_ESCAPE_CSS2   "S"
    00148
    00155 typedef enum {
    00156     UCNV_UNASSIGNED = 0,
    00158     UCNV_ILLEGAL = 1,
    00166     UCNV_IRREGULAR = 2,
    00171     UCNV_RESET = 3,
    00174     UCNV_CLOSE = 4,
    00176     UCNV_CLONE = 5
    00185 } UConverterCallbackReason;
    00186
    00187
    00192 typedef struct {
    00193     uint16_t size;
    00194     UBool flush;
    00195     UConverter *converter;
    00196     const UChar *source;
    00197     const UChar *sourceLimit;
    00198     char *target;
    00199     const char *targetLimit;
    00200     int32_t *offsets;
    00201 } UConverterFromUnicodeArgs;
    00202
    00203
    00208 typedef struct {
    00209     uint16_t size;
    00210     UBool flush;
    00211     UConverter *converter;
    00212     const char *source;
    00213     const char *sourceLimit;
    00214     UChar *target;
    00215     const UChar *targetLimit;
    00216     int32_t *offsets;
    00217 } UConverterToUnicodeArgs;
    00218
    00219
    00234 U_STABLE void U_EXPORT2 UCNV_FROM_U_CALLBACK_STOP (
    00235                   const void *context,
    00236                   UConverterFromUnicodeArgs *fromUArgs,
    00237                   const UChar* codeUnits,
    00238                   int32_t length,
    00239                   UChar32 codePoint,
    00240                   UConverterCallbackReason reason,
    00241                   UErrorCode * err);
    00242
    00243
    00244
    00258 U_STABLE void U_EXPORT2 UCNV_TO_U_CALLBACK_STOP (
    00259                   const void *context,
    00260                   UConverterToUnicodeArgs *toUArgs,
    00261                   const char* codeUnits,
    00262                   int32_t length,
    00263                   UConverterCallbackReason reason,
    00264                   UErrorCode * err);
    00265
    00285 U_STABLE void U_EXPORT2 UCNV_FROM_U_CALLBACK_SKIP (
    00286                   const void *context,
    00287                   UConverterFromUnicodeArgs *fromUArgs,
    00288                   const UChar* codeUnits,
    00289                   int32_t length,
    00290                   UChar32 codePoint,
    00291                   UConverterCallbackReason reason,
    00292                   UErrorCode * err);
    00293
    00315 U_STABLE void U_EXPORT2 UCNV_FROM_U_CALLBACK_SUBSTITUTE (
    00316                   const void *context,
    00317                   UConverterFromUnicodeArgs *fromUArgs,
    00318                   const UChar* codeUnits,
    00319                   int32_t length,
    00320                   UChar32 codePoint,
    00321                   UConverterCallbackReason reason,
    00322                   UErrorCode * err);
    00323
    00371 U_STABLE void U_EXPORT2 UCNV_FROM_U_CALLBACK_ESCAPE (
    00372                   const void *context,
    00373                   UConverterFromUnicodeArgs *fromUArgs,
    00374                   const UChar* codeUnits,
    00375                   int32_t length,
    00376                   UChar32 codePoint,
    00377                   UConverterCallbackReason reason,
    00378                   UErrorCode * err);
    00379
    00380
    00399 U_STABLE void U_EXPORT2 UCNV_TO_U_CALLBACK_SKIP (
    00400                   const void *context,
    00401                   UConverterToUnicodeArgs *toUArgs,
    00402                   const char* codeUnits,
    00403                   int32_t length,
    00404                   UConverterCallbackReason reason,
    00405                   UErrorCode * err);
    00406
    00425 U_STABLE void U_EXPORT2 UCNV_TO_U_CALLBACK_SUBSTITUTE (
    00426                   const void *context,
    00427                   UConverterToUnicodeArgs *toUArgs,
    00428                   const char* codeUnits,
    00429                   int32_t length,
    00430                   UConverterCallbackReason reason,
    00431                   UErrorCode * err);
    00432
    00451 U_STABLE void U_EXPORT2 UCNV_TO_U_CALLBACK_ESCAPE (
    00452                   const void *context,
    00453                   UConverterToUnicodeArgs *toUArgs,
    00454                   const char* codeUnits,
    00455                   int32_t length,
    00456                   UConverterCallbackReason reason,
    00457                   UErrorCode * err);
    00458
    00459 #endif
    00460
    00461 #endif
    00462
    00463 /*UCNV_ERR_H*/