forked from LeenkxTeam/LNXSDK
		
	
		
			
	
	
		
			395 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			395 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|  | /*************************************************
 | ||
|  | *      Perl-Compatible Regular Expressions       * | ||
|  | *************************************************/ | ||
|  | 
 | ||
|  | /* PCRE is a library of functions to support regular expressions whose syntax
 | ||
|  | and semantics are as close as possible to those of the Perl 5 language. | ||
|  | 
 | ||
|  |                        Written by Philip Hazel | ||
|  |      Original API code Copyright (c) 1997-2012 University of Cambridge | ||
|  |           New API code Copyright (c) 2016-2022 University of Cambridge | ||
|  | 
 | ||
|  | This module is auto-generated from Unicode data files. DO NOT EDIT MANUALLY! | ||
|  | Instead, modify the maint/GenerateUcpHeader.py script and run it to generate | ||
|  | a new version of this code. | ||
|  | 
 | ||
|  | ----------------------------------------------------------------------------- | ||
|  | Redistribution and use in source and binary forms, with or without | ||
|  | modification, are permitted provided that the following conditions are met: | ||
|  | 
 | ||
|  |     * Redistributions of source code must retain the above copyright notice, | ||
|  |       this list of conditions and the following disclaimer. | ||
|  | 
 | ||
|  |     * Redistributions in binary form must reproduce the above copyright | ||
|  |       notice, this list of conditions and the following disclaimer in the | ||
|  |       documentation and/or other materials provided with the distribution. | ||
|  | 
 | ||
|  |     * Neither the name of the University of Cambridge nor the names of its | ||
|  |       contributors may be used to endorse or promote products derived from | ||
|  |       this software without specific prior written permission. | ||
|  | 
 | ||
|  | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | ||
|  | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
|  | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
|  | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | ||
|  | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
|  | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
|  | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
|  | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
|  | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
|  | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
|  | POSSIBILITY OF SUCH DAMAGE. | ||
|  | ----------------------------------------------------------------------------- | ||
|  | */ | ||
|  | 
 | ||
|  | #ifndef PCRE2_UCP_H_IDEMPOTENT_GUARD
 | ||
|  | #define PCRE2_UCP_H_IDEMPOTENT_GUARD
 | ||
|  | 
 | ||
|  | /* This file contains definitions of the Unicode property values that are
 | ||
|  | returned by the UCD access macros and used throughout PCRE2. | ||
|  | 
 | ||
|  | IMPORTANT: The specific values of the first two enums (general and particular | ||
|  | character categories) are assumed by the table called catposstab in the file | ||
|  | pcre2_auto_possess.c. They are unlikely to change, but should be checked after | ||
|  | an update. */ | ||
|  | 
 | ||
|  | /* These are the general character categories. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   ucp_C, | ||
|  |   ucp_L, | ||
|  |   ucp_M, | ||
|  |   ucp_N, | ||
|  |   ucp_P, | ||
|  |   ucp_S, | ||
|  |   ucp_Z, | ||
|  | }; | ||
|  | 
 | ||
|  | /* These are the particular character categories. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   ucp_Cc,    /* Control */ | ||
|  |   ucp_Cf,    /* Format */ | ||
|  |   ucp_Cn,    /* Unassigned */ | ||
|  |   ucp_Co,    /* Private use */ | ||
|  |   ucp_Cs,    /* Surrogate */ | ||
|  |   ucp_Ll,    /* Lower case letter */ | ||
|  |   ucp_Lm,    /* Modifier letter */ | ||
|  |   ucp_Lo,    /* Other letter */ | ||
|  |   ucp_Lt,    /* Title case letter */ | ||
|  |   ucp_Lu,    /* Upper case letter */ | ||
|  |   ucp_Mc,    /* Spacing mark */ | ||
|  |   ucp_Me,    /* Enclosing mark */ | ||
|  |   ucp_Mn,    /* Non-spacing mark */ | ||
|  |   ucp_Nd,    /* Decimal number */ | ||
|  |   ucp_Nl,    /* Letter number */ | ||
|  |   ucp_No,    /* Other number */ | ||
|  |   ucp_Pc,    /* Connector punctuation */ | ||
|  |   ucp_Pd,    /* Dash punctuation */ | ||
|  |   ucp_Pe,    /* Close punctuation */ | ||
|  |   ucp_Pf,    /* Final punctuation */ | ||
|  |   ucp_Pi,    /* Initial punctuation */ | ||
|  |   ucp_Po,    /* Other punctuation */ | ||
|  |   ucp_Ps,    /* Open punctuation */ | ||
|  |   ucp_Sc,    /* Currency symbol */ | ||
|  |   ucp_Sk,    /* Modifier symbol */ | ||
|  |   ucp_Sm,    /* Mathematical symbol */ | ||
|  |   ucp_So,    /* Other symbol */ | ||
|  |   ucp_Zl,    /* Line separator */ | ||
|  |   ucp_Zp,    /* Paragraph separator */ | ||
|  |   ucp_Zs,    /* Space separator */ | ||
|  | }; | ||
|  | 
 | ||
|  | /* These are Boolean properties. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   ucp_ASCII, | ||
|  |   ucp_ASCII_Hex_Digit, | ||
|  |   ucp_Alphabetic, | ||
|  |   ucp_Bidi_Control, | ||
|  |   ucp_Bidi_Mirrored, | ||
|  |   ucp_Case_Ignorable, | ||
|  |   ucp_Cased, | ||
|  |   ucp_Changes_When_Casefolded, | ||
|  |   ucp_Changes_When_Casemapped, | ||
|  |   ucp_Changes_When_Lowercased, | ||
|  |   ucp_Changes_When_Titlecased, | ||
|  |   ucp_Changes_When_Uppercased, | ||
|  |   ucp_Dash, | ||
|  |   ucp_Default_Ignorable_Code_Point, | ||
|  |   ucp_Deprecated, | ||
|  |   ucp_Diacritic, | ||
|  |   ucp_Emoji, | ||
|  |   ucp_Emoji_Component, | ||
|  |   ucp_Emoji_Modifier, | ||
|  |   ucp_Emoji_Modifier_Base, | ||
|  |   ucp_Emoji_Presentation, | ||
|  |   ucp_Extended_Pictographic, | ||
|  |   ucp_Extender, | ||
|  |   ucp_Grapheme_Base, | ||
|  |   ucp_Grapheme_Extend, | ||
|  |   ucp_Grapheme_Link, | ||
|  |   ucp_Hex_Digit, | ||
|  |   ucp_IDS_Binary_Operator, | ||
|  |   ucp_IDS_Trinary_Operator, | ||
|  |   ucp_ID_Continue, | ||
|  |   ucp_ID_Start, | ||
|  |   ucp_Ideographic, | ||
|  |   ucp_Join_Control, | ||
|  |   ucp_Logical_Order_Exception, | ||
|  |   ucp_Lowercase, | ||
|  |   ucp_Math, | ||
|  |   ucp_Noncharacter_Code_Point, | ||
|  |   ucp_Pattern_Syntax, | ||
|  |   ucp_Pattern_White_Space, | ||
|  |   ucp_Prepended_Concatenation_Mark, | ||
|  |   ucp_Quotation_Mark, | ||
|  |   ucp_Radical, | ||
|  |   ucp_Regional_Indicator, | ||
|  |   ucp_Sentence_Terminal, | ||
|  |   ucp_Soft_Dotted, | ||
|  |   ucp_Terminal_Punctuation, | ||
|  |   ucp_Unified_Ideograph, | ||
|  |   ucp_Uppercase, | ||
|  |   ucp_Variation_Selector, | ||
|  |   ucp_White_Space, | ||
|  |   ucp_XID_Continue, | ||
|  |   ucp_XID_Start, | ||
|  |   /* This must be last */ | ||
|  |   ucp_Bprop_Count | ||
|  | }; | ||
|  | 
 | ||
|  | /* Size of entries in ucd_boolprop_sets[] */ | ||
|  | 
 | ||
|  | #define ucd_boolprop_sets_item_size 2
 | ||
|  | 
 | ||
|  | /* These are the bidi class values. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   ucp_bidiAL,   /* Arabic letter */ | ||
|  |   ucp_bidiAN,   /* Arabic number */ | ||
|  |   ucp_bidiB,    /* Paragraph separator */ | ||
|  |   ucp_bidiBN,   /* Boundary neutral */ | ||
|  |   ucp_bidiCS,   /* Common separator */ | ||
|  |   ucp_bidiEN,   /* European number */ | ||
|  |   ucp_bidiES,   /* European separator */ | ||
|  |   ucp_bidiET,   /* European terminator */ | ||
|  |   ucp_bidiFSI,  /* First strong isolate */ | ||
|  |   ucp_bidiL,    /* Left to right */ | ||
|  |   ucp_bidiLRE,  /* Left to right embedding */ | ||
|  |   ucp_bidiLRI,  /* Left to right isolate */ | ||
|  |   ucp_bidiLRO,  /* Left to right override */ | ||
|  |   ucp_bidiNSM,  /* Non-spacing mark */ | ||
|  |   ucp_bidiON,   /* Other neutral */ | ||
|  |   ucp_bidiPDF,  /* Pop directional format */ | ||
|  |   ucp_bidiPDI,  /* Pop directional isolate */ | ||
|  |   ucp_bidiR,    /* Right to left */ | ||
|  |   ucp_bidiRLE,  /* Right to left embedding */ | ||
|  |   ucp_bidiRLI,  /* Right to left isolate */ | ||
|  |   ucp_bidiRLO,  /* Right to left override */ | ||
|  |   ucp_bidiS,    /* Segment separator */ | ||
|  |   ucp_bidiWS,   /* White space */ | ||
|  | }; | ||
|  | 
 | ||
|  | /* These are grapheme break properties. The Extended Pictographic property
 | ||
|  | comes from the emoji-data.txt file. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   ucp_gbCR,                    /*  0 */ | ||
|  |   ucp_gbLF,                    /*  1 */ | ||
|  |   ucp_gbControl,               /*  2 */ | ||
|  |   ucp_gbExtend,                /*  3 */ | ||
|  |   ucp_gbPrepend,               /*  4 */ | ||
|  |   ucp_gbSpacingMark,           /*  5 */ | ||
|  |   ucp_gbL,                     /*  6 Hangul syllable type L */ | ||
|  |   ucp_gbV,                     /*  7 Hangul syllable type V */ | ||
|  |   ucp_gbT,                     /*  8 Hangul syllable type T */ | ||
|  |   ucp_gbLV,                    /*  9 Hangul syllable type LV */ | ||
|  |   ucp_gbLVT,                   /* 10 Hangul syllable type LVT */ | ||
|  |   ucp_gbRegional_Indicator,    /* 11 */ | ||
|  |   ucp_gbOther,                 /* 12 */ | ||
|  |   ucp_gbZWJ,                   /* 13 */ | ||
|  |   ucp_gbExtended_Pictographic, /* 14 */ | ||
|  | }; | ||
|  | 
 | ||
|  | /* These are the script identifications. */ | ||
|  | 
 | ||
|  | enum { | ||
|  |   /* Scripts which has characters in other scripts. */ | ||
|  |   ucp_Latin, | ||
|  |   ucp_Greek, | ||
|  |   ucp_Cyrillic, | ||
|  |   ucp_Arabic, | ||
|  |   ucp_Syriac, | ||
|  |   ucp_Thaana, | ||
|  |   ucp_Devanagari, | ||
|  |   ucp_Bengali, | ||
|  |   ucp_Gurmukhi, | ||
|  |   ucp_Gujarati, | ||
|  |   ucp_Oriya, | ||
|  |   ucp_Tamil, | ||
|  |   ucp_Telugu, | ||
|  |   ucp_Kannada, | ||
|  |   ucp_Malayalam, | ||
|  |   ucp_Sinhala, | ||
|  |   ucp_Myanmar, | ||
|  |   ucp_Georgian, | ||
|  |   ucp_Hangul, | ||
|  |   ucp_Mongolian, | ||
|  |   ucp_Hiragana, | ||
|  |   ucp_Katakana, | ||
|  |   ucp_Bopomofo, | ||
|  |   ucp_Han, | ||
|  |   ucp_Yi, | ||
|  |   ucp_Tagalog, | ||
|  |   ucp_Hanunoo, | ||
|  |   ucp_Buhid, | ||
|  |   ucp_Tagbanwa, | ||
|  |   ucp_Limbu, | ||
|  |   ucp_Tai_Le, | ||
|  |   ucp_Linear_B, | ||
|  |   ucp_Cypriot, | ||
|  |   ucp_Buginese, | ||
|  |   ucp_Coptic, | ||
|  |   ucp_Glagolitic, | ||
|  |   ucp_Syloti_Nagri, | ||
|  |   ucp_Phags_Pa, | ||
|  |   ucp_Nko, | ||
|  |   ucp_Kayah_Li, | ||
|  |   ucp_Javanese, | ||
|  |   ucp_Kaithi, | ||
|  |   ucp_Mandaic, | ||
|  |   ucp_Chakma, | ||
|  |   ucp_Sharada, | ||
|  |   ucp_Takri, | ||
|  |   ucp_Duployan, | ||
|  |   ucp_Grantha, | ||
|  |   ucp_Khojki, | ||
|  |   ucp_Linear_A, | ||
|  |   ucp_Mahajani, | ||
|  |   ucp_Manichaean, | ||
|  |   ucp_Modi, | ||
|  |   ucp_Old_Permic, | ||
|  |   ucp_Psalter_Pahlavi, | ||
|  |   ucp_Khudawadi, | ||
|  |   ucp_Tirhuta, | ||
|  |   ucp_Multani, | ||
|  |   ucp_Adlam, | ||
|  |   ucp_Masaram_Gondi, | ||
|  |   ucp_Dogra, | ||
|  |   ucp_Gunjala_Gondi, | ||
|  |   ucp_Hanifi_Rohingya, | ||
|  |   ucp_Sogdian, | ||
|  |   ucp_Nandinagari, | ||
|  |   ucp_Yezidi, | ||
|  |   ucp_Cypro_Minoan, | ||
|  |   ucp_Old_Uyghur, | ||
|  | 
 | ||
|  |   /* Scripts which has no characters in other scripts. */ | ||
|  |   ucp_Unknown, | ||
|  |   ucp_Common, | ||
|  |   ucp_Armenian, | ||
|  |   ucp_Hebrew, | ||
|  |   ucp_Thai, | ||
|  |   ucp_Lao, | ||
|  |   ucp_Tibetan, | ||
|  |   ucp_Ethiopic, | ||
|  |   ucp_Cherokee, | ||
|  |   ucp_Canadian_Aboriginal, | ||
|  |   ucp_Ogham, | ||
|  |   ucp_Runic, | ||
|  |   ucp_Khmer, | ||
|  |   ucp_Old_Italic, | ||
|  |   ucp_Gothic, | ||
|  |   ucp_Deseret, | ||
|  |   ucp_Inherited, | ||
|  |   ucp_Ugaritic, | ||
|  |   ucp_Shavian, | ||
|  |   ucp_Osmanya, | ||
|  |   ucp_Braille, | ||
|  |   ucp_New_Tai_Lue, | ||
|  |   ucp_Tifinagh, | ||
|  |   ucp_Old_Persian, | ||
|  |   ucp_Kharoshthi, | ||
|  |   ucp_Balinese, | ||
|  |   ucp_Cuneiform, | ||
|  |   ucp_Phoenician, | ||
|  |   ucp_Sundanese, | ||
|  |   ucp_Lepcha, | ||
|  |   ucp_Ol_Chiki, | ||
|  |   ucp_Vai, | ||
|  |   ucp_Saurashtra, | ||
|  |   ucp_Rejang, | ||
|  |   ucp_Lycian, | ||
|  |   ucp_Carian, | ||
|  |   ucp_Lydian, | ||
|  |   ucp_Cham, | ||
|  |   ucp_Tai_Tham, | ||
|  |   ucp_Tai_Viet, | ||
|  |   ucp_Avestan, | ||
|  |   ucp_Egyptian_Hieroglyphs, | ||
|  |   ucp_Samaritan, | ||
|  |   ucp_Lisu, | ||
|  |   ucp_Bamum, | ||
|  |   ucp_Meetei_Mayek, | ||
|  |   ucp_Imperial_Aramaic, | ||
|  |   ucp_Old_South_Arabian, | ||
|  |   ucp_Inscriptional_Parthian, | ||
|  |   ucp_Inscriptional_Pahlavi, | ||
|  |   ucp_Old_Turkic, | ||
|  |   ucp_Batak, | ||
|  |   ucp_Brahmi, | ||
|  |   ucp_Meroitic_Cursive, | ||
|  |   ucp_Meroitic_Hieroglyphs, | ||
|  |   ucp_Miao, | ||
|  |   ucp_Sora_Sompeng, | ||
|  |   ucp_Caucasian_Albanian, | ||
|  |   ucp_Bassa_Vah, | ||
|  |   ucp_Elbasan, | ||
|  |   ucp_Pahawh_Hmong, | ||
|  |   ucp_Mende_Kikakui, | ||
|  |   ucp_Mro, | ||
|  |   ucp_Old_North_Arabian, | ||
|  |   ucp_Nabataean, | ||
|  |   ucp_Palmyrene, | ||
|  |   ucp_Pau_Cin_Hau, | ||
|  |   ucp_Siddham, | ||
|  |   ucp_Warang_Citi, | ||
|  |   ucp_Ahom, | ||
|  |   ucp_Anatolian_Hieroglyphs, | ||
|  |   ucp_Hatran, | ||
|  |   ucp_Old_Hungarian, | ||
|  |   ucp_SignWriting, | ||
|  |   ucp_Bhaiksuki, | ||
|  |   ucp_Marchen, | ||
|  |   ucp_Newa, | ||
|  |   ucp_Osage, | ||
|  |   ucp_Tangut, | ||
|  |   ucp_Nushu, | ||
|  |   ucp_Soyombo, | ||
|  |   ucp_Zanabazar_Square, | ||
|  |   ucp_Makasar, | ||
|  |   ucp_Medefaidrin, | ||
|  |   ucp_Old_Sogdian, | ||
|  |   ucp_Elymaic, | ||
|  |   ucp_Nyiakeng_Puachue_Hmong, | ||
|  |   ucp_Wancho, | ||
|  |   ucp_Chorasmian, | ||
|  |   ucp_Dives_Akuru, | ||
|  |   ucp_Khitan_Small_Script, | ||
|  |   ucp_Tangsa, | ||
|  |   ucp_Toto, | ||
|  |   ucp_Vithkuqi, | ||
|  | 
 | ||
|  |   /* This must be last */ | ||
|  |   ucp_Script_Count | ||
|  | }; | ||
|  | 
 | ||
|  | /* Size of entries in ucd_script_sets[] */ | ||
|  | 
 | ||
|  | #define ucd_script_sets_item_size 3
 | ||
|  | 
 | ||
|  | #endif  /* PCRE2_UCP_H_IDEMPOTENT_GUARD */
 | ||
|  | 
 | ||
|  | /* End of pcre2_ucp.h */ |