diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2011-09-28 20:15:37 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2011-09-28 20:15:37 (GMT) |
commit | 17222160e7957935c00b5cf845888493b6350b58 (patch) | |
tree | 1b4c13f44aa067f55197a6167d370b2568202635 | |
parent | fd85c3aa8dbbdd3193a41b73ad591d03a1258358 (diff) | |
download | cpython-17222160e7957935c00b5cf845888493b6350b58.zip cpython-17222160e7957935c00b5cf845888493b6350b58.tar.gz cpython-17222160e7957935c00b5cf845888493b6350b58.tar.bz2 |
Mark _PyUnicode_FindMaxCharAndNumSurrogatePairs() as private
-rw-r--r-- | Include/unicodeobject.h | 12 | ||||
-rw-r--r-- | Objects/unicodeobject.c | 17 |
2 files changed, 10 insertions, 19 deletions
diff --git a/Include/unicodeobject.h b/Include/unicodeobject.h index b57c1e5..0b93276 100644 --- a/Include/unicodeobject.h +++ b/Include/unicodeobject.h @@ -543,18 +543,6 @@ PyAPI_FUNC(Py_ssize_t) PyUnicode_CopyCharacters( ); #endif -/* Find the maximum code point and count the number of surrogate pairs so a - correct string length can be computed before converting a string to UCS4. - This function counts single surrogates as a character and not as a pair. */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyUnicode_FindMaxCharAndNumSurrogatePairs( - const wchar_t *begin, - const wchar_t *end, - Py_UCS4 *maxchar, - Py_ssize_t *num_surrogates - ); -#endif - /* Create a Unicode Object from the Py_UNICODE buffer u of the given size. diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index ff3d4b6..69f0b8f 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -708,11 +708,14 @@ PyUnicode_CopyCharacters(PyObject *to, Py_ssize_t to_start, return -1; } -int -_PyUnicode_FindMaxCharAndNumSurrogatePairs(const wchar_t *begin, - const wchar_t *end, - Py_UCS4 *maxchar, - Py_ssize_t *num_surrogates) +/* Find the maximum code point and count the number of surrogate pairs so a + correct string length can be computed before converting a string to UCS4. + This function counts single surrogates as a character and not as a pair. + + Return 0 on success, or -1 on error. */ +static int +find_maxchar_surrogates(const wchar_t *begin, const wchar_t *end, + Py_UCS4 *maxchar, Py_ssize_t *num_surrogates) { const wchar_t *iter; @@ -789,7 +792,7 @@ _PyUnicode_Ready(PyUnicodeObject *unicode) #endif end = _PyUnicode_WSTR(unicode) + _PyUnicode_WSTR_LENGTH(unicode); - if (_PyUnicode_FindMaxCharAndNumSurrogatePairs(_PyUnicode_WSTR(unicode), end, + if (find_maxchar_surrogates(_PyUnicode_WSTR(unicode), end, &maxchar, &num_surrogates) == -1) { assert(0 && "PyUnicode_FindMaxCharAndNumSurrogatePairs failed"); @@ -1022,7 +1025,7 @@ PyUnicode_FromUnicode(const Py_UNICODE *u, Py_ssize_t size) /* If not empty and not single character, copy the Unicode data into the new object */ - if (_PyUnicode_FindMaxCharAndNumSurrogatePairs(u, u + size, &maxchar, + if (find_maxchar_surrogates(u, u + size, &maxchar, &num_surrogates) == -1) return NULL; |