Ruby 1.9.3p327(2012-11-10revision37606)
|
00001 /* 00002 * utf8tbl.h - Header file for Convertion Table 00003 * 00004 * $Id: utf8tbl.h 25189 2009-10-02 12:04:37Z akr $ 00005 */ 00006 00007 #ifndef _UTF8TBL_H_ 00008 #define _UTF8TBL_H_ 00009 00010 #ifdef UTF8_OUTPUT_ENABLE 00011 #define sizeof_euc_to_utf8_1byte 94 00012 #define sizeof_euc_to_utf8_2bytes 94 00013 extern const unsigned short euc_to_utf8_1byte[]; 00014 extern const unsigned short *const euc_to_utf8_2bytes[]; 00015 extern const unsigned short *const euc_to_utf8_2bytes_ms[]; 00016 extern const unsigned short *const euc_to_utf8_2bytes_mac[]; 00017 extern const unsigned short *const x0212_to_utf8_2bytes[]; 00018 #endif /* UTF8_OUTPUT_ENABLE */ 00019 00020 #ifdef UTF8_INPUT_ENABLE 00021 #define sizeof_utf8_to_euc_C2 64 00022 #define sizeof_utf8_to_euc_E5B8 64 00023 #define sizeof_utf8_to_euc_2bytes 112 00024 #define sizeof_utf8_to_euc_3bytes 16 00025 extern const unsigned short *const utf8_to_euc_2bytes[]; 00026 extern const unsigned short *const utf8_to_euc_2bytes_ms[]; 00027 extern const unsigned short *const utf8_to_euc_2bytes_932[]; 00028 extern const unsigned short *const utf8_to_euc_2bytes_mac[]; 00029 extern const unsigned short *const *const utf8_to_euc_3bytes[]; 00030 extern const unsigned short *const *const utf8_to_euc_3bytes_ms[]; 00031 extern const unsigned short *const *const utf8_to_euc_3bytes_932[]; 00032 extern const unsigned short *const *const utf8_to_euc_3bytes_mac[]; 00033 #endif /* UTF8_INPUT_ENABLE */ 00034 00035 #ifdef UNICODE_NORMALIZATION 00036 00037 #define NORMALIZATION_TABLE_LENGTH 942 00038 #define NORMALIZATION_TABLE_NFC_LENGTH 3 00039 #define NORMALIZATION_TABLE_NFD_LENGTH 9 00040 struct normalization_pair { 00041 const unsigned char nfc[NORMALIZATION_TABLE_NFC_LENGTH]; 00042 const unsigned char nfd[NORMALIZATION_TABLE_NFD_LENGTH]; 00043 }; 00044 extern const struct normalization_pair normalization_table[]; 00045 #endif 00046 00047 #ifdef SHIFTJIS_CP932 00048 #define CP932_TABLE_BEGIN 0xFA 00049 #define CP932_TABLE_END 0xFC 00050 extern const unsigned short shiftjis_cp932[3][189]; 00051 #define CP932INV_TABLE_BEGIN 0xED 00052 #define CP932INV_TABLE_END 0xEE 00053 extern const unsigned short cp932inv[2][189]; 00054 #endif /* SHIFTJIS_CP932 */ 00055 00056 #ifdef X0212_ENABLE 00057 extern const unsigned short shiftjis_x0212[3][189]; 00058 extern const unsigned short *const x0212_shiftjis[]; 00059 #endif /* X0212_ENABLE */ 00060 00061 #endif 00062