ucstring.h File Reference

Definitions for Unicode string functions and related text conversion. More...

#include <mi32/textid.h>
#include <stdio.h>
#include <stdarg.h>
#include <mi32/stddefns.h>

Include dependency graph for ucstring.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Classes

struct  MUCEVENTSTATE
 Structure used to keep track of state for calling MucKeyEventToUnicode(). More...
struct  UCDATA
 Structure representing "cooked" entry from UnicodeData.txt. More...

Defines

#define CHARALG_EUC   0x00020000
#define CHARALG_GL2GR   0x00040000
#define CHARALG_GR2GL   0x00080000
#define CHARALG_SJIS   0x00010000
#define CHARSET_ArabicUC   0x00000033
#define CHARSET_ASCII   CHARSET_ISO_Latin_1
#define CHARSET_BigFive   0x00000007
#define CHARSET_CNS_11543_01   0x00000008
#define CHARSET_CNS_11543_02   0x00000009
#define CHARSET_CNS_11543_14   0x0000000A
#define CHARSET_DOSCP_437   0x00000022
#define CHARSET_DOSCP_850   0x00000023
#define CHARSET_DOSCP_852   0x00000024
#define CHARSET_DOSCP_857   0x00000025
#define CHARSET_DOSCP_861   0x00000026
#define CHARSET_DOSCP_863   0x00000027
#define CHARSET_DOSCP_865   0x00000028
#define CHARSET_GB_12345   0x00000002
#define CHARSET_GB_2312   0x00000001
#define CHARSET_GB_7589   0x00000003
#define CHARSET_GB_7590   0x00000004
#define CHARSET_GB_8565   0x00000006
#define CHARSET_GB_Han   0x00000005
#define CHARSET_GB_ROMAN   0x00000019
#define CHARSET_HW_KATAKANA   0x0000001B
#define CHARSET_IBM_1046   0x00000044
#define CHARSET_IBMCP_1040   0x0000002C
#define CHARSET_IBMCP_1041   0x0000002D
#define CHARSET_IBMCP_1043   0x0000002E
#define CHARSET_IBMCP_855   0x0000002A
#define CHARSET_IBMCP_864   0x0000002B
#define CHARSET_IBMCP_869   0x00000029
#define CHARSET_ISCII_Bengali   0x00000048
#define CHARSET_ISCII_Devanagari   0x00000047
#define CHARSET_ISCII_Gujarati   0x0000004A
#define CHARSET_ISCII_Gurmukhi   0x00000049
#define CHARSET_ISCII_Kannada   0x0000004E
#define CHARSET_ISCII_Malayalam   0x0000004F
#define CHARSET_ISCII_Oriya   0x0000004B
#define CHARSET_ISCII_Tamil   0x0000004C
#define CHARSET_ISCII_Telugu   0x0000004D
#define CHARSET_ISO_8859_1   0x0000000F
#define CHARSET_ISO_8859_2   0x00000010
#define CHARSET_ISO_8859_3   0x00000011
#define CHARSET_ISO_8859_4   0x00000012
#define CHARSET_ISO_8859_5   0x00000013
#define CHARSET_ISO_8859_6   0x00000014
#define CHARSET_ISO_8859_7   0x00000015
#define CHARSET_ISO_8859_8   0x00000016
#define CHARSET_ISO_8859_9   0x00000017
#define CHARSET_ISO_Latin_1   CHARSET_ISO_8859_1
#define CHARSET_JIS_0208   CHARSET_JIS_X_0208_1990
#define CHARSET_JIS_0212   CHARSET_JIS_X_0212_1990
#define CHARSET_JIS_C_6226   0x0000001A
#define CHARSET_JIS_ROMAN   0x00000018
#define CHARSET_JIS_X_0208_1990   0x0000000B
#define CHARSET_JIS_X_0212_1990   0x0000000C
#define CHARSET_KOI8   0x00000050
#define CHARSET_KS_C_5601_1987   0x0000000D
#define CHARSET_KS_C_5601_1992   0x00000046
#define CHARSET_KS_C_5601_Unif   0x00000045
#define CHARSET_KS_C_5657_1991   0x0000000E
#define CHARSET_MacArabic   0x00000034
#define CHARSET_MacCentEurope   0x00000038
#define CHARSET_MacCroatian   0x00000035
#define CHARSET_MacCyrillic   0x00000036
#define CHARSET_MacDingbats   0x00000037
#define CHARSET_MacGreek   0x00000039
#define CHARSET_MacHebrew   0x0000003A
#define CHARSET_MacIcelandic   0x0000003B
#define CHARSET_MacJapanese   0x0000003C
#define CHARSET_MacRoman   0x0000003E
#define CHARSET_MacRomanian   0x0000003D
#define CHARSET_MacSymbol   0x0000003F
#define CHARSET_MacThai   0x00000040
#define CHARSET_MacTurkish   0x00000041
#define CHARSET_MacUkrainian   0x00000042
#define CHARSET_MAX   0x00000050
#define CHARSET_MI_Thai   0x00000031
#define CHARSET_SHIFT_JIS   (CHARALG_SJIS | CHARSET_JIS_X_0208_1990)
#define CHARSET_TIS620_2529   0x0000002F
#define CHARSET_Unicode   0x00000000
#define CHARSET_WinCP_ANSI   0x00000032
#define CHARSET_WinCP_Arab   0x00000020
#define CHARSET_WinCP_Baltic   0x00000043
#define CHARSET_WinCP_Cyrl   0x0000001E
#define CHARSET_WinCP_EE   0x0000001D
#define CHARSET_WinCP_Greek   0x0000001F
#define CHARSET_WinCP_Hebr   0x00000021
#define CHARSET_WinCP_Thai   0x00000030
#define CHARSET_WinCP_Turk   0x0000001C
#define ENCODING_ASCII   ENCODING_ISO2022
#define ENCODING_ISO2022   0
#define ENCODING_Unicode   -1
#define GLYPHSUB_AllowCircleForms   0x00000200
#define GLYPHSUB_AllowCompatForms   0x00000004
#define GLYPHSUB_AllowFontForms   0x00000400
#define GLYPHSUB_AllowFractionForms   0x00000010
#define GLYPHSUB_AllowNarrowForms   0x00000002
#define GLYPHSUB_AllowNoBreakForms   0x00000800
#define GLYPHSUB_AllowPositionalForms   0x00000008
#define GLYPHSUB_AllowSmallForms   0x00000080
#define GLYPHSUB_AllowSquareForms   0x00000100
#define GLYPHSUB_AllowSubscriptForms   0x00000020
#define GLYPHSUB_AllowSuperscriptForms   0x00000040
#define GLYPHSUB_AllowVerticalForms   0x00001000
#define GLYPHSUB_AllowWideForms   0x00000001
#define LIBEXPORT   MI_DLLIMPORT
#define MASK_ALG   0x7FFF0000
#define MASK_CHARSET   0x0000FFFF
#define MTTEXT_NULLIfUnknown   0x00000001
#define MUC_THAI_OF   1
#define MUC_THAI_TTF   2
#define MUCEVENT_ComposeOff   0x02
#define MUCEVENT_ComposeOn   0x01
#define MUCEVENT_ComposeToggle   (MUCEVENT_ComposeOn|MUCEVENT_ComposeOff)
#define MucGLYPHDIRECTION_LtoR   0
#define MucGLYPHDIRECTION_RtoL   1
#define MucGLYPHDIRECTION_Weak   2
#define MucGLYPHFLAG_Mark   0x40
#define MucGLYPHFLAG_NonJoining   0x80
#define MucGLYPHFLAG_PartOfRtoLWord   0x01
#define MUCVERSION   2
#define UCCONV_NoByteOrderMark   0x00000001
#define UCDECOMPFLAG_Final   (1 << UCDECOMP_Final)
#define UCDECOMPFLAG_Initial   (1 << UCDECOMP_Initial)
#define UCDECOMPFLAG_Isolated   (1 << UCDECOMP_Isolated)
#define UCDECOMPFLAG_Medial   (1 << UCDECOMP_Medial)
#define UCDECOMPFLAG_PositionMask   (UCDECOMPFLAG_Initial | UCDECOMPFLAG_Medial | UCDECOMPFLAG_Final | UCDECOMPFLAG_Isolated)

Enumerations

enum  BIDIFLAGS {
  BIDIFLAG_L = (1 << BIDITAG_L), BIDIFLAG_LRE = (1 << BIDITAG_LRE), BIDIFLAG_LRO = (1 << BIDITAG_LRO), BIDIFLAG_R = (1 << BIDITAG_R),
  BIDIFLAG_AL = (1 << BIDITAG_AL), BIDIFLAG_RLE = (1 << BIDITAG_RLE), BIDIFLAG_RLO = (1 << BIDITAG_RLO), BIDIFLAG_PDF = (1 << BIDITAG_PDF),
  BIDIFLAG_EN = (1 << BIDITAG_EN), BIDIFLAG_ES = (1 << BIDITAG_ES), BIDIFLAG_ET = (1 << BIDITAG_ET), BIDIFLAG_AN = (1 << BIDITAG_AN),
  BIDIFLAG_CS = (1 << BIDITAG_CS), BIDIFLAG_NSM = (1 << BIDITAG_NSM), BIDIFLAG_BN = (1 << BIDITAG_BN), BIDIFLAG_B = (1 << BIDITAG_B),
  BIDIFLAG_WS = (1 << BIDITAG_WS), BIDIFLAG_ON = (1 << BIDITAG_ON)
}
enum  BIDITAG {
  BIDITAG_L = 0, BIDITAG_LRE = 1, BIDITAG_LRO = 2, BIDITAG_R = 3,
  BIDITAG_AL = 4, BIDITAG_RLE = 5, BIDITAG_RLO = 6, BIDITAG_PDF = 7,
  BIDITAG_EN = 8, BIDITAG_ES = 9, BIDITAG_ET = 10, BIDITAG_AN = 11,
  BIDITAG_CS = 12, BIDITAG_NSM = 13, BIDITAG_BN = 14, BIDITAG_B = 15,
  BIDITAG_WS = 16, BIDITAG_ON = 17
}
enum  CHAR_ENCODING {
  CHAR_ENCODING_ASCII = 0, CHAR_ENCODING_Unicode, CHAR_ENCODING_UTF8, CHAR_ENCODING_XResFile,
  CHAR_ENCODING_Unicode_Decomposed, CHAR_ENCODING_UTF8_Decomposed, CHAR_ENCODING_WindowsMultiByte, CHAR_ENCODING_ISO_2022 = 100,
  CHAR_ENCODING_ISO_8859_1, CHAR_ENCODING_ISO_8859_2, CHAR_ENCODING_ISO_8859_3, CHAR_ENCODING_ISO_8859_4,
  CHAR_ENCODING_ISO_8859_5, CHAR_ENCODING_ISO_8859_6, CHAR_ENCODING_ISO_8859_7, CHAR_ENCODING_ISO_8859_8,
  CHAR_ENCODING_ISO_8859_9, CHAR_ENCODING_JIS = 120, CHAR_ENCODING_EUC, CHAR_ENCODING_SJIS,
  CHAR_ENCODING_Japanese, CHAR_ENCODING_Big5 = 130, CHAR_ENCODING_GB_2312, CHAR_ENCODING_KCS_5601 = 140,
  CHAR_ENCODING_ISCII_Devanagari = 150, CHAR_ENCODING_ISCII_Bengali, CHAR_ENCODING_ISCII_Gurmukhi, CHAR_ENCODING_ISCII_Gujarati,
  CHAR_ENCODING_ISCII_Oriya, CHAR_ENCODING_ISCII_Tamil, CHAR_ENCODING_ISCII_Telugu, CHAR_ENCODING_ISCII_Kannada,
  CHAR_ENCODING_ISCII_Malayalam, CHAR_ENCODING_WinCP_ANSI = 300, CHAR_ENCODING_WinCP_Cyrl, CHAR_ENCODING_WinCP_Greek,
  CHAR_ENCODING_WinCP_Arabic, CHAR_ENCODING_WinCP_Thai, CHAR_ENCODING_WinCP_EE, CHAR_ENCODING_WinCP_Turk,
  CHAR_ENCODING_WinCP_Hebr, CHAR_ENCODING_IBMCP_855 = 400, CHAR_ENCODING_IBMCP_869, CHAR_ENCODING_DOSCP_437 = 500,
  CHAR_ENCODING_DOSCP_850, CHAR_ENCODING_DOSCP_852, CHAR_ENCODING_DOSCP_857, CHAR_ENCODING_DOSCP_861,
  CHAR_ENCODING_DOSCP_863, CHAR_ENCODING_DOSCP_865, CHAR_ENCODING_MacArabic = 600, CHAR_ENCODING_MacCroatian,
  CHAR_ENCODING_MacCyrillic, CHAR_ENCODING_MacDingbats, CHAR_ENCODING_MacCentEurope, CHAR_ENCODING_MacGreek,
  CHAR_ENCODING_MacHebrew, CHAR_ENCODING_MacIcelandic, CHAR_ENCODING_MacJapanese, CHAR_ENCODING_MacRomanian,
  CHAR_ENCODING_MacRoman, CHAR_ENCODING_MacSymbol, CHAR_ENCODING_MacThai, CHAR_ENCODING_MacTurkish,
  CHAR_ENCODING_MacUkrainian, CHAR_ENCODING_KOI8 = 700
}
enum  ENCODELIST_FLAGS {
  ENCODELIST_FLAG_Any = 0x0000, ENCODELIST_FLAG_Importable = 0x0001, ENCODELIST_FLAG_Exportable = 0x0002, ENCODELIST_FLAG_Both = 0x0003,
  ENCODELIST_FLAG_NoUnicode = 0x0004
}
enum  SCRIPTTAG {
  SCRIPTTAG_arab = 0x61726162, SCRIPTTAG_armn = 0x61726D6E, SCRIPTTAG_beng = 0x62656E67, SCRIPTTAG_bpmf = 0x62706D66,
  SCRIPTTAG_cyrl = 0x6379726C, SCRIPTTAG_deva = 0x64657661, SCRIPTTAG_grek = 0x6772656B, SCRIPTTAG_grgn = 0x6772676E,
  SCRIPTTAG_gujr = 0x67756A72, SCRIPTTAG_hang = 0x68616E67, SCRIPTTAG_hani = 0x68616E69, SCRIPTTAG_hebr = 0x68656272,
  SCRIPTTAG_kana = 0x6B616E61, SCRIPTTAG_knbn = 0x6B6E626E, SCRIPTTAG_knda = 0x6B6E6461, SCRIPTTAG_laoS = 0x6C616F20,
  SCRIPTTAG_latn = 0x6C61746E, SCRIPTTAG_mlym = 0x6D6C796D, SCRIPTTAG_orya = 0x6F727961, SCRIPTTAG_punj = 0x70756E6A,
  SCRIPTTAG_taml = 0x74616D6C, SCRIPTTAG_telu = 0x74656C75, SCRIPTTAG_thai = 0x74686169, SCRIPTTAG_tibt = 0x74696174,
  SCRIPTTAG_neut = 0x4E455554, SCRIPTTAG_puse = 0x50555345, SCRIPTTAG_spcl = 0x5350434C, SCRIPTTAG_surr = 0x53555252,
  SCRIPTTAG_Default = 0x00000000
}
enum  UCCAT {
  UCCAT_Cn = 0, UCCAT_Lu = 1, UCCAT_Ll = 2, UCCAT_Lt = 3,
  UCCAT_Lm = 4, UCCAT_Lo = 5, UCCAT_Mn = 6, UCCAT_Mc = 7,
  UCCAT_Me = 8, UCCAT_Nd = 9, UCCAT_Nl = 10, UCCAT_No = 11,
  UCCAT_Zs = 12, UCCAT_Zl = 13, UCCAT_Zp = 14, UCCAT_Cc = 15,
  UCCAT_Cf = 16, UCCAT_Cs = 17, UCCAT_Co = 18, UCCAT_Pc = 20,
  UCCAT_Pd = 21, UCCAT_Ps = 22, UCCAT_Pe = 23, UCCAT_Pi = 24,
  UCCAT_Pf = 25, UCCAT_Po = 26, UCCAT_Sm = 27, UCCAT_Sc = 28,
  UCCAT_Sk = 29, UCCAT_So = 30
}
enum  UCCATFLAGS {
  UCCATFLAG_Cn = (1 << UCCAT_Cn), UCCATFLAG_Lu = (1 << UCCAT_Lu), UCCATFLAG_Ll = (1 << UCCAT_Ll), UCCATFLAG_Lt = (1 << UCCAT_Lt),
  UCCATFLAG_Lm = (1 << UCCAT_Lm), UCCATFLAG_Lo = (1 << UCCAT_Lo), UCCATFLAG_Mn = (1 << UCCAT_Mn), UCCATFLAG_Mc = (1 << UCCAT_Mc),
  UCCATFLAG_Me = (1 << UCCAT_Me), UCCATFLAG_Nd = (1 << UCCAT_Nd), UCCATFLAG_Nl = (1 << UCCAT_Nl), UCCATFLAG_No = (1 << UCCAT_No),
  UCCATFLAG_Zs = (1 << UCCAT_Zs), UCCATFLAG_Zl = (1 << UCCAT_Zl), UCCATFLAG_Zp = (1 << UCCAT_Zp), UCCATFLAG_Cc = (1 << UCCAT_Cc),
  UCCATFLAG_Cf = (1 << UCCAT_Cf), UCCATFLAG_Cs = (1 << UCCAT_Cs), UCCATFLAG_Co = (1 << UCCAT_Co), UCCATFLAG_Pc = (1 << UCCAT_Pc),
  UCCATFLAG_Pd = (1 << UCCAT_Pd), UCCATFLAG_Ps = (1 << UCCAT_Ps), UCCATFLAG_Pe = (1 << UCCAT_Pe), UCCATFLAG_Pi = (1 << UCCAT_Pi),
  UCCATFLAG_Pf = (1 << UCCAT_Pf), UCCATFLAG_Po = (1 << UCCAT_Po), UCCATFLAG_Sm = (1 << UCCAT_Sm), UCCATFLAG_Sc = (1 << UCCAT_Sc),
  UCCATFLAG_Sk = (1 << UCCAT_Sk), UCCATFLAG_So = (1 << UCCAT_So), UCCATFLAG_Mi = (1 << 31)
}
enum  UCDECOMP {
  UCDECOMP_NoTag = 0, UCDECOMP_Initial = 1, UCDECOMP_Medial = 2, UCDECOMP_Final = 3,
  UCDECOMP_Isolated = 4, UCDECOMP_Compat = 5, UCDECOMP_Wide = 6, UCDECOMP_Narrow = 7,
  UCDECOMP_Fraction = 8, UCDECOMP_Subscript = 9, UCDECOMP_Superscript = 10, UCDECOMP_Small = 11,
  UCDECOMP_Square = 12, UCDECOMP_Circle = 13, UCDECOMP_Font = 14, UCDECOMP_NoBreak = 15,
  UCDECOMP_Vertical = 16
}

Functions

DEPRECATED LIBEXPORT UNICODEMtTextGetStringExtUC (const char *group, const char *key, UINT32 flags)
DEPRECATED LIBEXPORT UNICODEMtTextGetStringUC (const char *group, const char *key)
LIBEXPORT int MucCharsetToUnicode (int val, int charset)
LIBEXPORT int MucCharsetToUnicodeBuf (UNICODE *buf, int charset)
LIBEXPORT int MucConvertFromISO2022 (void *vcd, const void *vinbuf, char **outbuf)
LIBEXPORT int MucConvertFromUnicode (void *vcd, const UNICODE *ucbuf, void **outbufp)
LIBEXPORT int MucConvertISO2022aToUnicode (const void *, UNICODE **)
LIBEXPORT int MucConvertISO2022ToUnicode (const void *, UNICODE **)
LIBEXPORT int MucConvertToISO2022 (void *vcd, const void *vinbuf, char **outbuf)
LIBEXPORT int MucConvertToUnicode (void *vcd, const void *vinbuf, UNICODE **outbuf)
LIBEXPORT int MucConvertUnicodeGen (const UNICODE *inbuf, int(*NewCharsetFunc)(int NewCharset, int OldCharset, void *UserData), int(*AddCharsFunc)(UINT8 *chars, int len, void *UserData), void *UserData, UINT32 flags)
LIBEXPORT int MucConvertUnicodeToISO2022 (const UNICODE *inbuf, char **outbuf)
LIBEXPORT int MucConvertUnicodeToUTF8 (const UNICODE *instr, UINT8 **outstr)
LIBEXPORT int MucConvertUTF8ToUnicode (const UINT8 *instr, UNICODE **outstr)
LIBEXPORT UNICODEMucDecompose (const UNICODE *string)
LIBEXPORT UNICODEMucDoGlyphSubstitutions (const UNICODE *instr, bool(*CB_AllowSub)(const UCDATA *sub, void *cbdata), void *cbdata, UINT32 flags=0)
LIBEXPORT UNICODEMucFlipVisualAndLogicalOrder (const UNICODE *)
LIBEXPORT void MucFPrintfA (void *handle, const char *format,...)
LIBEXPORT void MucFPrintfAV (void *handle, const char *format, va_list)
LIBEXPORT void MucFPrintfClose (void *handle)
LIBEXPORT void MucFPrintfFlush (void *handle)
LIBEXPORT int MucFPrintfOpen (const UNICODE *filename, const char *filemode, const char *encoding, void **handle)
LIBEXPORT void MucFPrintfU (void *handle, const UNICODE *format,...)
LIBEXPORT void MucFPrintfUV (void *handle, const UNICODE *format, va_list)
LIBEXPORT int MucGetDefaultCharsets (int *charset1, int *charset2, int *charset3)
LIBEXPORT CHAR_ENCODING MucGetEncodingFromName (const char *name)
LIBEXPORT CHAR_ENCODING MucGetEncodingFromNum (int num, ENCODELIST_FLAGS flags)
LIBEXPORT int MucGetEncodingNum (CHAR_ENCODING encoding, ENCODELIST_FLAGS flags)
LIBEXPORT int MucGetGlyphDirection (const UNICODE *uc, int curdir, UINT8 *glyphflags)
LIBEXPORT const char * MucGetName (CHAR_ENCODING encoding)
LIBEXPORT int MucGetNumEncodings (ENCODELIST_FLAGS flags)
LIBEXPORT int MucGuessJapaneseEncoding (const UINT8 *in, char *encoding)
LIBEXPORT int MucHasRightToLeftTextISO2022 (const char *in)
LIBEXPORT int MucHasRightToLeftTextUC (const UNICODE *in)
LIBEXPORT ERRVALUE MucIndicGlyphSubstitutions (const UNICODE *instr, UNICODE **outstr, SCRIPTTAG script=SCRIPTTAG_Default, INT32 len=-1, bool bApplyRephHack=false)
LIBEXPORT int MucInitConversion (void **handle, const char *encoding, UINT32 flags)
LIBEXPORT bool MucIsThaiLowerVowel (UNICODE ch)
LIBEXPORT bool MucIsThaiTone (UNICODE ch)
LIBEXPORT bool MucIsThaiUpperVowel (UNICODE ch)
LIBEXPORT bool MucIsThaiVowel (UNICODE ch)
LIBEXPORT int MucNameToCharset (const char *name, ENCODELIST_FLAGS flags)
LIBEXPORT char * MucNameToDesc (const char *name)
LIBEXPORT UNICODEMucNameToDescUC (const char *name)
LIBEXPORT int MucNameToNum (const char *name, ENCODELIST_FLAGS flags)
LIBEXPORT char * MucNumToDesc (int num, ENCODELIST_FLAGS flags)
LIBEXPORT UNICODEMucNumToDescUC (int num, ENCODELIST_FLAGS flags)
LIBEXPORT const char * MucNumToName (int num, ENCODELIST_FLAGS flags)
LIBEXPORT int MucQuickConvToISO2022 (int encodetype, const void *in, char **outp)
LIBEXPORT int MucQuickConvToUnicode (int encodetype, const void *in, UNICODE **ucp)
LIBEXPORT UNICODEMucRecompose (const UNICODE *string)
LIBEXPORT void MucReset (void *handle)
LIBEXPORT void MucStopConversion (void *handle)
LIBEXPORT int MucStrLenISO2022 (const void *vinbuf)
LIBEXPORT UNICODEMucThaiShiftTonesAndVowels (const UNICODE *str, UINT32 fontencoding)
LIBEXPORT int MucUnicodeToCharset (int val, int charset)
LIBEXPORT UNICODEstrntouc (UNICODE *dest, const char *source, int len)
LIBEXPORT UNICODEstrtouc (UNICODE *dest, const char *source)
LIBEXPORT UNICODEstrtouccat (UNICODE *dest, const char *source)
LIBEXPORT UNICODEstrtoucdup (const char *)
bool ucisalnum (UNICODE c)
bool ucisalpha (UNICODE c)
LIBEXPORT bool ucisbidiprop (UNICODE c, UINT32 bidiflags)
bool ucisblank (UNICODE c)
bool ucisclosepunct (UNICODE c)
bool uciscntrl (UNICODE c)
bool ucisconnect (UNICODE c)
bool uciscurrency (UNICODE c)
bool ucisdash (UNICODE c)
LIBEXPORT bool ucisdecompbidiprop (UNICODE c, UINT32 decompflags)
bool ucisdigit (UNICODE digit)
bool ucisdigit2 (UNICODE c)
bool ucisenclosing (UNICODE c)
bool ucisfinalpunct (UNICODE c)
bool ucisfmtcntrl (UNICODE c)
bool ucishan (UNICODE c)
bool ucishangul (UNICODE c)
bool ucisinitialpunct (UNICODE c)
bool ucisisocntrl (UNICODE c)
bool ucislower (UNICODE c)
bool ucislsep (UNICODE c)
bool ucisltr (UNICODE c)
bool ucismark (UNICODE c)
bool ucismath (UNICODE c)
bool ucismodif (UNICODE c)
bool ucismodifsymbol (UNICODE c)
bool ucisneutral (UNICODE c)
bool ucisnonspacing (UNICODE c)
bool ucisnsmark (UNICODE c)
bool ucisnumber (UNICODE c)
bool ucisopenpunct (UNICODE c)
LIBEXPORT bool ucisprop (UNICODE c, UINT32 uccatflags)
bool ucispsep (UNICODE c)
bool ucispunct (UNICODE c)
bool ucisrtl (UNICODE c)
bool ucisspace (UNICODE c)
bool ucisspmark (UNICODE c)
bool ucisstrong (UNICODE c)
bool ucissymbol (UNICODE c)
bool ucistitle (UNICODE c)
bool ucisupper (UNICODE c)
bool ucisweak (UNICODE c)
LIBEXPORT DEPRECATED char * ucntostr (char *dest, const UNICODE *source, int len)
LIBEXPORT UNICODEucstrcat (UNICODE *dest, const UNICODE *source)
LIBEXPORT UNICODEucstrchr (const UNICODE *p, UNICODE value)
LIBEXPORT int ucstrcmp (const UNICODE *p1, const UNICODE *p2)
LIBEXPORT UNICODEucstrcpy (UNICODE *dest, const UNICODE *source)
LIBEXPORT UNICODEucstrdup (const UNICODE *s)
LIBEXPORT int ucstricmp (const UNICODE *p1, const UNICODE *p2)
LIBEXPORT size_t ucstrlen (const UNICODE *p)
LIBEXPORT UNICODEucstrlwr (UNICODE *p)
LIBEXPORT UNICODEucstrncat (UNICODE *p1, const UNICODE *p2, int len)
LIBEXPORT int ucstrncmp (const UNICODE *p1, const UNICODE *p2, int len)
LIBEXPORT UNICODEucstrncpy (UNICODE *dest, const UNICODE *source, int len)
LIBEXPORT int ucstrnicmp (const UNICODE *p1, const UNICODE *p2, int len)
LIBEXPORT UNICODEucstrpbrk (UNICODE *s, UNICODE *accept)
LIBEXPORT UNICODEucstrrchr (UNICODE *s, UNICODE value)
LIBEXPORT size_t ucstrspn (const UNICODE *s, const UNICODE *accept)
LIBEXPORT UNICODEucstrstr (UNICODE *s, const UNICODE *p)
LIBEXPORT UNICODEucstrtok (UNICODE *s, UNICODE *delim)
LIBEXPORT UNICODEucstrupr (UNICODE *p)
LIBEXPORT UNICODE uctolower (UNICODE c)
LIBEXPORT DEPRECATED char * uctostr (char *dest, const UNICODE *source)
LIBEXPORT DEPRECATED char * uctostrdup (const UNICODE *)
LIBEXPORT UNICODE uctoupper (UNICODE c)


Detailed Description

Definitions for Unicode string functions and related text conversion.

Definition in file ucstring.h.


Define Documentation

#define CHARALG_EUC   0x00020000
 

Definition at line 141 of file ucstring.h.

#define CHARALG_GL2GR   0x00040000
 

Set high bits.

Definition at line 142 of file ucstring.h.

#define CHARALG_GR2GL   0x00080000
 

Strip high bits.

Definition at line 143 of file ucstring.h.

#define CHARALG_SJIS   0x00010000
 

Definition at line 140 of file ucstring.h.

#define CHARSET_ArabicUC   0x00000033
 

The Arabic range of Unicode.

Definition at line 196 of file ucstring.h.

#define CHARSET_ASCII   CHARSET_ISO_Latin_1
 

Definition at line 230 of file ucstring.h.

#define CHARSET_BigFive   0x00000007
 

Definition at line 152 of file ucstring.h.

#define CHARSET_CNS_11543_01   0x00000008
 

Definition at line 153 of file ucstring.h.

#define CHARSET_CNS_11543_02   0x00000009
 

Definition at line 154 of file ucstring.h.

#define CHARSET_CNS_11543_14   0x0000000A
 

Definition at line 155 of file ucstring.h.

#define CHARSET_DOSCP_437   0x00000022
 

DOS Codepage.

Definition at line 179 of file ucstring.h.

#define CHARSET_DOSCP_850   0x00000023
 

DOS Codepage.

Definition at line 180 of file ucstring.h.

#define CHARSET_DOSCP_852   0x00000024
 

DOS Codepage.

Definition at line 181 of file ucstring.h.

#define CHARSET_DOSCP_857   0x00000025
 

DOS Codepage.

Definition at line 182 of file ucstring.h.

#define CHARSET_DOSCP_861   0x00000026
 

DOS Codepage.

Definition at line 183 of file ucstring.h.

#define CHARSET_DOSCP_863   0x00000027
 

DOS Codepage.

Definition at line 184 of file ucstring.h.

#define CHARSET_DOSCP_865   0x00000028
 

DOS Codepage.

Definition at line 185 of file ucstring.h.

#define CHARSET_GB_12345   0x00000002
 

Definition at line 147 of file ucstring.h.

#define CHARSET_GB_2312   0x00000001
 

Definition at line 146 of file ucstring.h.

#define CHARSET_GB_7589   0x00000003
 

Definition at line 148 of file ucstring.h.

#define CHARSET_GB_7590   0x00000004
 

Definition at line 149 of file ucstring.h.

#define CHARSET_GB_8565   0x00000006
 

Definition at line 151 of file ucstring.h.

#define CHARSET_GB_Han   0x00000005
 

Definition at line 150 of file ucstring.h.

#define CHARSET_GB_ROMAN   0x00000019
 

From ISO 2022.

Definition at line 170 of file ucstring.h.

#define CHARSET_HW_KATAKANA   0x0000001B
 

From ISO 2022.

Definition at line 172 of file ucstring.h.

#define CHARSET_IBM_1046   0x00000044
 

IBM Arabic encoding.

Definition at line 213 of file ucstring.h.

#define CHARSET_IBMCP_1040   0x0000002C
 

IBM Codepage.

Definition at line 189 of file ucstring.h.

#define CHARSET_IBMCP_1041   0x0000002D
 

IBM Codepage.

Definition at line 190 of file ucstring.h.

#define CHARSET_IBMCP_1043   0x0000002E
 

IBM Codepage.

Definition at line 191 of file ucstring.h.

#define CHARSET_IBMCP_855   0x0000002A
 

IBM Codepage.

Definition at line 187 of file ucstring.h.

#define CHARSET_IBMCP_864   0x0000002B
 

IBM Codepage.

Definition at line 188 of file ucstring.h.

#define CHARSET_IBMCP_869   0x00000029
 

IBM Codepage.

Definition at line 186 of file ucstring.h.

#define CHARSET_ISCII_Bengali   0x00000048
 

Indic.

Definition at line 217 of file ucstring.h.

#define CHARSET_ISCII_Devanagari   0x00000047
 

Indic.

Definition at line 216 of file ucstring.h.

#define CHARSET_ISCII_Gujarati   0x0000004A
 

Indic.

Definition at line 219 of file ucstring.h.

#define CHARSET_ISCII_Gurmukhi   0x00000049
 

Indic.

Definition at line 218 of file ucstring.h.

#define CHARSET_ISCII_Kannada   0x0000004E
 

Indic.

Definition at line 223 of file ucstring.h.

#define CHARSET_ISCII_Malayalam   0x0000004F
 

Indic.

Definition at line 224 of file ucstring.h.

#define CHARSET_ISCII_Oriya   0x0000004B
 

Indic.

Definition at line 220 of file ucstring.h.

#define CHARSET_ISCII_Tamil   0x0000004C
 

Indic.

Definition at line 221 of file ucstring.h.

#define CHARSET_ISCII_Telugu   0x0000004D
 

Indic.

Definition at line 222 of file ucstring.h.

#define CHARSET_ISO_8859_1   0x0000000F
 

ASCII.

Definition at line 160 of file ucstring.h.

#define CHARSET_ISO_8859_2   0x00000010
 

Definition at line 161 of file ucstring.h.

#define CHARSET_ISO_8859_3   0x00000011
 

Definition at line 162 of file ucstring.h.

#define CHARSET_ISO_8859_4   0x00000012
 

Definition at line 163 of file ucstring.h.

#define CHARSET_ISO_8859_5   0x00000013
 

Definition at line 164 of file ucstring.h.

#define CHARSET_ISO_8859_6   0x00000014
 

Definition at line 165 of file ucstring.h.

#define CHARSET_ISO_8859_7   0x00000015
 

Definition at line 166 of file ucstring.h.

#define CHARSET_ISO_8859_8   0x00000016
 

Definition at line 167 of file ucstring.h.

#define CHARSET_ISO_8859_9   0x00000017
 

Definition at line 168 of file ucstring.h.

#define CHARSET_ISO_Latin_1   CHARSET_ISO_8859_1
 

Definition at line 229 of file ucstring.h.

#define CHARSET_JIS_0208   CHARSET_JIS_X_0208_1990
 

Definition at line 231 of file ucstring.h.

#define CHARSET_JIS_0212   CHARSET_JIS_X_0212_1990
 

Definition at line 232 of file ucstring.h.

#define CHARSET_JIS_C_6226   0x0000001A
 

From ISO 2022.

Definition at line 171 of file ucstring.h.

#define CHARSET_JIS_ROMAN   0x00000018
 

Definition at line 169 of file ucstring.h.

#define CHARSET_JIS_X_0208_1990   0x0000000B
 

Definition at line 156 of file ucstring.h.

#define CHARSET_JIS_X_0212_1990   0x0000000C
 

Definition at line 157 of file ucstring.h.

#define CHARSET_KOI8   0x00000050
 

Russian/Ukranian/Etc.

Definition at line 225 of file ucstring.h.

#define CHARSET_KS_C_5601_198