This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
regen/unicode_constants.pl: Make portable to non-ASCII
[perl5.git] / unicode_constants.h
CommitLineData
61dad979
KW
1/* -*- buffer-read-only: t -*-
2 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
1b0f46bf 3 * This file is built by regen/unicode_constants.pl from Unicode data.
61dad979
KW
4 * Any changes made here will be lost!
5 */
6
d10c72f2 7
1b0f46bf
KW
8#ifndef H_UNICODE_CONSTANTS /* Guard against nested #includes */
9#define H_UNICODE_CONSTANTS 1
d10c72f2 10
61dad979 11/* This file contains #defines for various Unicode code points. The values
525b6419
KW
12 * the macros expand to are the native Unicode code point, or all or portions
13 * of the UTF-8 encoding for the code point. In the former case, the macro
14 * name has the suffix "_NATIVE"; otherwise, the suffix "_UTF8".
61dad979 15 *
525b6419
KW
16 * The macros that have the suffix "_UTF8" may have further suffixes, as
17 * follows:
18 * "_FIRST_BYTE" if the value is just the first byte of the UTF-8
19 * representation; the value will be a numeric constant.
20 * "_TAIL" if instead it represents all but the first byte. This, and
21 * with no additional suffix are both string constants */
61dad979 22
76837d21 23
1dfa4f52
KW
24#define COMBINING_GRAVE_ACCENT_UTF8 "\xCC\x80" /* U+0300 */
25#define COMBINING_ACUTE_ACCENT_UTF8 "\xCC\x81" /* U+0301 */
26#define COMBINING_DIAERESIS_UTF8 "\xCC\x88" /* U+0308 */
76837d21 27
1dfa4f52 28#define GREEK_SMALL_LETTER_IOTA_UTF8 "\xCE\xB9" /* U+03B9 */
76837d21 29
1dfa4f52 30#define GREEK_SMALL_LETTER_UPSILON_UTF8 "\xCF\x85" /* U+03C5 */
61dad979 31
1dfa4f52
KW
32#define HYPHEN_UTF8 "\xE2\x80\x90" /* U+2010 */
33#define FIRST_SURROGATE_UTF8_FIRST_BYTE 0xED /* U+D800 */
34
35#define DELETE_NATIVE 0x7F /* U+007F */
36#define LATIN_SMALL_LETTER_SHARP_S_NATIVE 0xDF /* U+00DF */
37#define LATIN_SMALL_LETTER_A_WITH_RING_ABOVE_NATIVE 0xE5 /* U+00E5 */
38#define LATIN_CAPITAL_LETTER_A_WITH_RING_ABOVE_NATIVE 0xC5 /* U+00C5 */
39#define LATIN_SMALL_LETTER_Y_WITH_DIAERESIS_NATIVE 0xFF /* U+00FF */
40#define MICRO_SIGN_NATIVE 0xB5 /* U+00B5 */
525b6419 41
1b0f46bf 42#endif /* H_UNICODE_CONSTANTS */
d10c72f2 43
61dad979 44/* ex: set ro: */