summaryrefslogtreecommitdiff
path: root/ext/pcre/pcrelib/ucp.h
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2013-03-03 19:06:22 +0100
committerAnatol Belski <ab@php.net>2013-03-03 19:06:22 +0100
commit357ab3cbada57374075ccf57c9ec25bbbbcb6948 (patch)
treef8c61f2068629b070bf82ada4ad2b2adc44516ba /ext/pcre/pcrelib/ucp.h
parentc134f2a1a5ef56da72dbdc1096eddc91e4f5939e (diff)
downloadphp-git-357ab3cbada57374075ccf57c9ec25bbbbcb6948.tar.gz
merged PCRE 8.32
- defined HAVE_CONFIG_H to simplify the future merges - PCRE NEWS http://pcre.org/news.txt
Diffstat (limited to 'ext/pcre/pcrelib/ucp.h')
-rw-r--r--ext/pcre/pcrelib/ucp.h28
1 files changed, 26 insertions, 2 deletions
diff --git a/ext/pcre/pcrelib/ucp.h b/ext/pcre/pcrelib/ucp.h
index 59c3bec3d3..21039106e5 100644
--- a/ext/pcre/pcrelib/ucp.h
+++ b/ext/pcre/pcrelib/ucp.h
@@ -7,7 +7,11 @@
/* This file contains definitions of the property values that are returned by
the UCD access macros. New values that are added for new releases of Unicode
-should always be at the end of each enum, for backwards compatibility. */
+should always be at the end of each enum, for backwards compatibility.
+
+IMPORTANT: Note also that the specific numeric values of the enums have to be
+the same as the values that are generated by the maint/MultiStage2.py script,
+where the equivalent property descriptive names are listed in vectors. */
/* These are the general character categories. */
@@ -21,7 +25,7 @@ enum {
ucp_Z /* Separator */
};
-/* These are the particular character types. */
+/* These are the particular character categories. */
enum {
ucp_Cc, /* Control */
@@ -56,6 +60,26 @@ enum {
ucp_Zs /* Space separator */
};
+/* These are grapheme break properties. Note that the code for processing them
+assumes that the values are less than 16. If more values are added that take
+the number to 16 or more, the code will have to be rewritten. */
+
+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_gbRegionalIndicator, /* 11 */
+ ucp_gbOther /* 12 */
+};
+
/* These are the script identifications. */
enum {