commit c0a1ff81fc71f742acf2c046fe7acd070c0f08b9
parent c02ebd5a83c009261788df87bce6539259632ccb
Author: Keno Fischer <kfischer+github@college.harvard.edu>
Date: Wed, 13 Jul 2016 10:41:13 -0400
Walk back ABI breaking changes (#76)
Diffstat:
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/utf8proc.c b/utf8proc.c
@@ -308,7 +308,7 @@ static utf8proc_bool grapheme_break_extended(int lbc, int tbc, utf8proc_int32_t
return break_permitted;
}
-UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break_stateful(
utf8proc_int32_t c1, utf8proc_int32_t c2, utf8proc_int32_t *state) {
return grapheme_break_extended(utf8proc_get_property(c1)->boundclass,
@@ -316,6 +316,12 @@ UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
state);
}
+
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+ utf8proc_int32_t c1, utf8proc_int32_t c2) {
+ return utf8proc_grapheme_break_stateful(c1, c2, NULL);
+}
+
static utf8proc_int32_t seqindex_decode_entry(const utf8proc_uint16_t **entry)
{
utf8proc_int32_t entry_cp = **entry;
diff --git a/utf8proc.h b/utf8proc.h
@@ -527,12 +527,19 @@ UTF8PROC_DLLEXPORT utf8proc_ssize_t utf8proc_reencode(utf8proc_int32_t *buffer,
* GB10/12/13 which require this state will not be applied, essentially
* matching the rules in Unicode 8.0.0.
*
- * @warning If the state parameter is used, `utf8proc_grapheme_break` must be called
- * IN ORDER on ALL potential breaks in a string.
+ * @warning If the state parameter is used, `utf8proc_grapheme_break_stateful` must
+ * be called IN ORDER on ALL potential breaks in a string.
*/
-UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break_stateful(
utf8proc_int32_t codepoint1, utf8proc_int32_t codepoint2, utf8proc_int32_t *state);
+/**
+ * Same as @ref utf8proc_grapheme_break_stateful, except without support for the
+ * Unicode 9 additions to the algorithm. Supported for legacy reasons.
+ */
+UTF8PROC_DLLEXPORT utf8proc_bool utf8proc_grapheme_break(
+ utf8proc_int32_t codepoint1, utf8proc_int32_t codepoint2);
+
/**
* Given a codepoint `c`, return the codepoint of the corresponding