aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/charset/doccodes.h
diff options
context:
space:
mode:
authorDevtools Arcadia <arcadia-devtools@yandex-team.ru>2022-02-07 18:08:42 +0300
committerDevtools Arcadia <arcadia-devtools@mous.vla.yp-c.yandex.net>2022-02-07 18:08:42 +0300
commit1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch)
treee26c9fed0de5d9873cce7e00bc214573dc2195b7 /library/cpp/charset/doccodes.h
downloadydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'library/cpp/charset/doccodes.h')
-rw-r--r--library/cpp/charset/doccodes.h129
1 files changed, 129 insertions, 0 deletions
diff --git a/library/cpp/charset/doccodes.h b/library/cpp/charset/doccodes.h
new file mode 100644
index 0000000000..75c87adf9e
--- /dev/null
+++ b/library/cpp/charset/doccodes.h
@@ -0,0 +1,129 @@
+#pragma once
+
+enum ECharset {
+ CODES_UNSUPPORTED = -2, // valid but unsupported encoding
+ CODES_UNKNOWN = -1, // invalid or unspecified encoding
+ CODES_WIN, // [ 0] WINDOWS_1251 Windows
+ CODES_KOI8, // [ 1] KOI8_U Koi8-u
+ CODES_ALT, // [ 2] IBM_866 MS DOS, alternative
+ CODES_MAC, // [ 3] MAC_CYRILLIC Macintosh
+ CODES_MAIN, // [ 4] ISO_LATIN_CYRILLIC Main
+ CODES_ASCII, // [ 5] WINDOWS_1252 Latin 1
+ CODES_RESERVED_3, // reserved code: use it for new encodings before adding them to the end of the list
+ CODES_WIN_EAST, // [ 7] WINDOWS_1250 WIN PL
+ CODES_ISO_EAST, // [ 8] ISO_8859_2 ISO PL
+ // our superset of subset of windows-1251
+ CODES_YANDEX, // [ 9] YANDEX
+ CODES_UTF_16BE, // [10] UTF_16BE
+ CODES_UTF_16LE, // [11] UTF_16LE
+ // missing standard codepages
+ CODES_IBM855, // [12] IBM_855
+ CODES_UTF8, // [13] UTF8
+ CODES_UNKNOWNPLANE, // [14] Unrecognized characters are mapped into the PUA: U+F000..U+F0FF
+
+ CODES_KAZWIN, // [15] WINDOWS_1251_K Kazakh version of Windows-1251
+ CODES_TATWIN, // [16] WINDOWS_1251_T Tatarian version of Windows-1251
+ CODES_ARMSCII, // [17] Armenian ASCII
+ CODES_GEO_ITA, // [18] Academy of Sciences Georgian
+ CODES_GEO_PS, // [19] Georgian Parliament
+ CODES_ISO_8859_3, // [20] Latin-3: Turkish, Maltese and Esperanto
+ CODES_ISO_8859_4, // [21] Latin-4: Estonian, Latvian, Lithuanian, Greenlandic, Sami
+ CODES_ISO_8859_6, // [22] Latin/Arabic: Arabic
+ CODES_ISO_8859_7, // [23] Latin/Greek: Greek
+ CODES_ISO_8859_8, // [24] Latin/Hebrew: Hebrew
+ CODES_ISO_8859_9, // [25] Latin-5 or Turkish: Turkish
+ CODES_ISO_8859_13, // [26] Latin-7 or Baltic Rim: Baltic languages
+ CODES_ISO_8859_15, // [27] Latin-9: Western European languages
+ CODES_ISO_8859_16, // [28] Latin-10: South-Eastern European languages
+ CODES_WINDOWS_1253, // [29] for Greek
+ CODES_WINDOWS_1254, // [30] for Turkish
+ CODES_WINDOWS_1255, // [31] for Hebrew
+ CODES_WINDOWS_1256, // [32] for Arabic
+ CODES_WINDOWS_1257, // [33] for Estonian, Latvian and Lithuanian
+
+ // these codes are all the other 8bit codes known by libiconv
+ // they follow in alphanumeric order
+ CODES_CP1046,
+ CODES_CP1124,
+ CODES_CP1125,
+ CODES_CP1129,
+ CODES_CP1131,
+ CODES_CP1133,
+ CODES_CP1161, // [40]
+ CODES_CP1162,
+ CODES_CP1163,
+ CODES_CP1258,
+ CODES_CP437,
+ CODES_CP737,
+ CODES_CP775,
+ CODES_CP850,
+ CODES_CP852,
+ CODES_CP853,
+ CODES_CP856, // [50]
+ CODES_CP857,
+ CODES_CP858,
+ CODES_CP860,
+ CODES_CP861,
+ CODES_CP862,
+ CODES_CP863,
+ CODES_CP864,
+ CODES_CP865,
+ CODES_CP869,
+ CODES_CP874, // [60]
+ CODES_CP922,
+ CODES_HP_ROMAN8,
+ CODES_ISO646_CN,
+ CODES_ISO646_JP,
+ CODES_ISO8859_10,
+ CODES_ISO8859_11,
+ CODES_ISO8859_14,
+ CODES_JISX0201,
+ CODES_KOI8_T,
+ CODES_MAC_ARABIC, // [70]
+ CODES_MAC_CENTRALEUROPE,
+ CODES_MAC_CROATIAN,
+ CODES_MAC_GREEK,
+ CODES_MAC_HEBREW,
+ CODES_MAC_ICELAND,
+ CODES_MAC_ROMANIA,
+ CODES_MAC_ROMAN,
+ CODES_MAC_THAI,
+ CODES_MAC_TURKISH,
+ CODES_RESERVED_2, // [80] reserved code: use it for new encodings before adding them to the end of the list
+ CODES_MULELAO,
+ CODES_NEXTSTEP,
+ CODES_PT154,
+ CODES_RISCOS_LATIN1,
+ CODES_RK1048,
+ CODES_TCVN,
+ CODES_TDS565,
+ CODES_TIS620,
+ CODES_VISCII,
+
+ // libiconv multibyte codepages
+ CODES_BIG5, // [90]
+ CODES_BIG5_HKSCS,
+ CODES_BIG5_HKSCS_1999,
+ CODES_BIG5_HKSCS_2001,
+ CODES_CP932,
+ CODES_CP936,
+ CODES_CP949,
+ CODES_CP950,
+ CODES_EUC_CN,
+ CODES_EUC_JP,
+ CODES_EUC_KR, // [100]
+ CODES_EUC_TW,
+ CODES_GB18030,
+ CODES_GBK,
+ CODES_HZ,
+ CODES_ISO_2022_CN,
+ CODES_ISO_2022_CN_EXT,
+ CODES_ISO_2022_JP,
+ CODES_ISO_2022_JP_1,
+ CODES_ISO_2022_JP_2,
+ CODES_ISO_2022_KR, // [110]
+ CODES_JOHAB,
+ CODES_SHIFT_JIS,
+
+ CODES_MAX
+};