88 #if !UCONFIG_NO_CONVERSION
100 #define UCNV_SUB_STOP_ON_ILLEGAL "i"
106 #define UCNV_SKIP_STOP_ON_ILLEGAL "i"
112 #define UCNV_ESCAPE_ICU NULL
117 #define UCNV_ESCAPE_JAVA "J"
123 #define UCNV_ESCAPE_C "C"
129 #define UCNV_ESCAPE_XML_DEC "D"
135 #define UCNV_ESCAPE_XML_HEX "X"
140 #define UCNV_ESCAPE_UNICODE "U"
147 #define UCNV_ESCAPE_CSS2 "S"
237 const UChar* codeUnits,
261 const char* codeUnits,
288 const UChar* codeUnits,
318 const UChar* codeUnits,
374 const UChar* codeUnits,
402 const char* codeUnits,
428 const char* codeUnits,
454 const char* codeUnits,
The structure for the toUnicode callback function parameter.
const char * targetLimit
Pointer to the limit (end + 1) of target buffer.
UConverterCallbackReason
The process condition code to be used with the callbacks.
int32_t * offsets
Pointer to the buffer that recieves the offsets.
UBool flush
The internal state of converter will be reset and data flushed if set to TRUE.
UConverter * converter
Pointer to the converter that is opened and to which this struct is passed as an argument.
Called when ucnv_safeClone() is called on the converter.
The code point is illegal.
const UChar * source
Pointer to the source source buffer.
const char * sourceLimit
Pointer to the limit (end + 1) of source buffer.
The code point is unassigned.
const UChar * targetLimit
Pointer to the limit (end + 1) of target buffer.
The structure for the fromUnicode callback function parameter.
Called when the converter is closed.
char * target
Pointer to the target buffer.
void UCNV_FROM_U_CALLBACK_STOP(const void *context, UConverterFromUnicodeArgs *fromUArgs, const UChar *codeUnits, int32_t length, UChar32 codePoint, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This From Unicode callback STOPS at the ILLEGAL_SEQUENCE, returning the error code back to the caller immediately.
void UCNV_FROM_U_CALLBACK_SKIP(const void *context, UConverterFromUnicodeArgs *fromUArgs, const UChar *codeUnits, int32_t length, UChar32 codePoint, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This From Unicode callback skips any ILLEGAL_SEQUENCE, or skips only UNASSINGED_SEQUENCE depending on the context parameter simply ignoring those characters.
void UCNV_TO_U_CALLBACK_ESCAPE(const void *context, UConverterToUnicodeArgs *toUArgs, const char *codeUnits, int32_t length, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This To Unicode callback will Substitute the ILLEGAL SEQUENCE wit...
const UChar * sourceLimit
Pointer to the limit (end + 1) of source buffer.
UBool flush
The internal state of converter will be reset and data flushed if set to TRUE.
UChar * target
Pointer to the target buffer.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
The callback is called with this reason when a 'reset' has occured.
uint16_t size
The size of this struct.
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
The codepoint is not a regular sequence in the encoding.
uint16_t size
The size of this struct.
struct UConverter UConverter
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
void UCNV_TO_U_CALLBACK_SUBSTITUTE(const void *context, UConverterToUnicodeArgs *toUArgs, const char *codeUnits, int32_t length, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This To Unicode callback will Substitute the ILLEGAL SEQUENCE...
int32_t * offsets
Pointer to the buffer that recieves the offsets.
Basic definitions for ICU, for both C and C++ APIs.
void UCNV_TO_U_CALLBACK_STOP(const void *context, UConverterToUnicodeArgs *toUArgs, const char *codeUnits, int32_t length, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This To Unicode callback STOPS at the ILLEGAL_SEQUENCE, returning the error code back to the caller immediately.
void UCNV_TO_U_CALLBACK_SKIP(const void *context, UConverterToUnicodeArgs *toUArgs, const char *codeUnits, int32_t length, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This To Unicode callback skips any ILLEGAL_SEQUENCE, or skips only UNASSINGED_SEQUENCE depending on the context parameter simply ignoring those characters.
void UCNV_FROM_U_CALLBACK_ESCAPE(const void *context, UConverterFromUnicodeArgs *fromUArgs, const UChar *codeUnits, int32_t length, UChar32 codePoint, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This From Unicode callback will Substitute the ILLEGAL SEQUENCE w...
const char * source
Pointer to the source source buffer.
void UCNV_FROM_U_CALLBACK_SUBSTITUTE(const void *context, UConverterFromUnicodeArgs *fromUArgs, const UChar *codeUnits, int32_t length, UChar32 codePoint, UConverterCallbackReason reason, UErrorCode *err)
DO NOT CALL THIS FUNCTION DIRECTLY! This From Unicode callback will Substitute the ILLEGAL SEQUENCE...
UConverter * converter
Pointer to the converter that is opened and to which this struct is passed as an argument.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
int8_t UBool
The ICU boolean type.