| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| Expand Up | @@ -46,13 +46,17 @@ | |||||
| Py_UNICODE_ISDIGIT(ch) || \ | ||||||
| Py_UNICODE_ISNUMERIC(ch)) | ||||||
|
|
||||||
| #define Py_UNICODE_COPY(target, source, length) \ | ||||||
| memcpy((target), (source), (length)*sizeof(Py_UNICODE)) | ||||||
|
|
||||||
| #define Py_UNICODE_FILL(target, value, length) \ | ||||||
| do {Py_ssize_t i_; Py_UNICODE *t_ = (target); Py_UNICODE v_ = (value);\ | ||||||
| for (i_ = 0; i_ < (length); i_++) t_[i_] = v_;\ | ||||||
| } while (0) | ||||||
| Py_DEPRECATED(3.3) static inline void | ||||||
| Py_UNICODE_COPY(Py_UNICODE *target, const Py_UNICODE *source, Py_ssize_t length) { | ||||||
| memcpy(target, source, length * sizeof(Py_UNICODE)); | ||||||
| } | ||||||
|
|
||||||
| Py_DEPRECATED(3.3) static inline void | ||||||
| Py_UNICODE_FILL(Py_UNICODE *target, Py_UNICODE value, Py_ssize_t length) { | ||||||
| for (Py_ssize_t i = 0; i < length; i++) { | ||||||
| target[i] = value; | ||||||
| } | ||||||
| } | ||||||
|
|
||||||
| /* macros to work with surrogates */ | ||||||
| #define Py_UNICODE_IS_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDFFF) | ||||||
| Expand All | @@ -67,14 +71,6 @@ | |||||
| /* low surrogate = bottom 10 bits added to DC00 */ | ||||||
| #define Py_UNICODE_LOW_SURROGATE(ch) (0xDC00 + ((ch) & 0x3FF)) | ||||||
|
|
||||||
| /* Check if substring matches at given offset. The offset must be | ||||||
| valid, and the substring must not be empty. */ | ||||||
|
|
||||||
| #define Py_UNICODE_MATCH(string, offset, substring) \ | ||||||
| ((*((string)->wstr + (offset)) == *((substring)->wstr)) && \ | ||||||
| ((*((string)->wstr + (offset) + (substring)->wstr_length-1) == *((substring)->wstr + (substring)->wstr_length-1))) && \ | ||||||
| !memcmp((string)->wstr + (offset), (substring)->wstr, (substring)->wstr_length*sizeof(Py_UNICODE))) | ||||||
|
|
||||||
| /* --- Unicode Type ------------------------------------------------------- */ | ||||||
|
|
||||||
| /* ASCII-only strings created through PyUnicode_New use the PyASCIIObject | ||||||
| Expand Down Expand Up | @@ -247,10 +243,6 @@ PyAPI_FUNC(int) _PyUnicode_CheckConsistency( | |||||
| int check_content); | ||||||
|
|
||||||
| /* Fast access macros */ | ||||||
| #define PyUnicode_WSTR_LENGTH(op) \ | ||||||
|
Comment thread
methane marked this conversation as resolved.
|
||||||
| (PyUnicode_IS_COMPACT_ASCII(op) ? \ | ||||||
| ((PyASCIIObject*)op)->length : \ | ||||||
| ((PyCompactUnicodeObject*)op)->wstr_length) | ||||||
|
|
||||||
| /* Returns the deprecated Py_UNICODE representation's size in code units | ||||||
| (this includes surrogate pairs as 2 units). | ||||||
| Expand Down Expand Up | @@ -445,6 +437,14 @@ enum PyUnicode_Kind { | |||||
| (0xffffU) : \ | ||||||
| (0x10ffffU))))) | ||||||
|
|
||||||
| Py_DEPRECATED(3.3) | ||||||
| static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) { | ||||||
| return PyUnicode_IS_COMPACT_ASCII(op) ? | ||||||
| ((PyASCIIObject*)op)->length : | ||||||
| ((PyCompactUnicodeObject*)op)->wstr_length; | ||||||
| } | ||||||
| #define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject*)op) | ||||||
|
Comment thread
Copy link
Copy Markdown
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityYou might use _PyObject_CAST() macro:
Suggested change
Sorry, something went wrong.
All reactions
|
||||||
|
|
||||||
| /* === Public API ========================================================= */ | ||||||
|
|
||||||
| /* --- Plain Py_UNICODE --------------------------------------------------- */ | ||||||
| Expand Down Expand Up | @@ -543,7 +543,7 @@ PyAPI_FUNC(void) _PyUnicode_FastFill( | |||||
| only allowed if u was set to NULL. | ||||||
|
|
||||||
| The buffer is copied into the new object. */ | ||||||
| /* Py_DEPRECATED(3.3) */ PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode( | ||||||
| Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode( | ||||||
| const Py_UNICODE *u, /* Unicode buffer */ | ||||||
| Py_ssize_t size /* size of buffer */ | ||||||
| ); | ||||||
| Expand Down Expand Up | @@ -572,13 +572,13 @@ PyAPI_FUNC(Py_UCS4) _PyUnicode_FindMaxChar ( | |||||
| Py_UNICODE buffer. | ||||||
| If the wchar_t/Py_UNICODE representation is not yet available, this | ||||||
| function will calculate it. */ | ||||||
| /* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode( | ||||||
| Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode( | ||||||
| PyObject *unicode /* Unicode object */ | ||||||
| ); | ||||||
|
|
||||||
| /* Similar to PyUnicode_AsUnicode(), but raises a ValueError if the string | ||||||
| contains null characters. */ | ||||||
| PyAPI_FUNC(const Py_UNICODE *) _PyUnicode_AsUnicode( | ||||||
| Py_DEPRECATED(3.3) PyAPI_FUNC(const Py_UNICODE *) _PyUnicode_AsUnicode( | ||||||
| PyObject *unicode /* Unicode object */ | ||||||
| ); | ||||||
|
|
||||||
| Expand All | @@ -587,7 +587,7 @@ PyAPI_FUNC(const Py_UNICODE *) _PyUnicode_AsUnicode( | |||||
| If the wchar_t/Py_UNICODE representation is not yet available, this | ||||||
| function will calculate it. */ | ||||||
|
|
||||||
| /* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicodeAndSize( | ||||||
| Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicodeAndSize( | ||||||
| PyObject *unicode, /* Unicode object */ | ||||||
| Py_ssize_t *size /* location where to save the length */ | ||||||
| ); | ||||||
| Expand Down | ||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| Mark ``Py_UNICODE_COPY``, ``Py_UNICODE_FILL``, ``PyUnicode_WSTR_LENGTH``, | ||
| ``PyUnicode_FromUnicode``, ``PyUnicode_AsUnicode``, ``_PyUnicode_AsUnicode``, | ||
| and ``PyUnicode_AsUnicodeAndSize`` as deprecated in C. Remove ``Py_UNICODE_MATCH`` | ||
| which was deprecated and broken since Python 3.3. |
| Back | FazBrowse Home | New Git URL |
Uh oh!
There was an error while loading. Please reload this page.