bpo-41123: Remove PyLong_FromUnicode() (GH-21204)

This commit is contained in:
Inada Naoki 2020-06-29 13:00:43 +09:00 committed by GitHub
parent d9f2a13106
commit e4f1fe6edb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 5 additions and 30 deletions

View File

@ -94,17 +94,6 @@ distinguished from a number. Use :c:func:`PyErr_Occurred` to disambiguate.
are no digits, :exc:`ValueError` will be raised. are no digits, :exc:`ValueError` will be raised.
.. c:function:: PyObject* PyLong_FromUnicode(Py_UNICODE *u, Py_ssize_t length, int base)
Convert a sequence of Unicode digits to a Python integer value. The Unicode
string is first encoded to a byte string using :c:func:`PyUnicode_EncodeDecimal`
and then converted using :c:func:`PyLong_FromString`.
.. deprecated-removed:: 3.3 4.0
Part of the old-style :c:type:`Py_UNICODE` API; please migrate to using
:c:func:`PyLong_FromUnicodeObject`.
.. c:function:: PyObject* PyLong_FromUnicodeObject(PyObject *u, int base) .. c:function:: PyObject* PyLong_FromUnicodeObject(PyObject *u, int base)
Convert a sequence of Unicode digits in the string *u* to a Python integer Convert a sequence of Unicode digits in the string *u* to a Python integer

View File

@ -1205,11 +1205,6 @@ PyLong_FromString:const char*:str::
PyLong_FromString:char**:pend:: PyLong_FromString:char**:pend::
PyLong_FromString:int:base:: PyLong_FromString:int:base::
PyLong_FromUnicode:PyObject*::+1:
PyLong_FromUnicode:Py_UNICODE*:u::
PyLong_FromUnicode:Py_ssize_t:length::
PyLong_FromUnicode:int:base::
PyLong_FromUnicodeObject:PyObject*::+1: PyLong_FromUnicodeObject:PyObject*::+1:
PyLong_FromUnicodeObject:PyObject*:u:0: PyLong_FromUnicodeObject:PyObject*:u:0:
PyLong_FromUnicodeObject:int:base:: PyLong_FromUnicodeObject:int:base::

View File

@ -226,3 +226,6 @@ Removed
* Removed ``PyUnicode_GetMax()``. Please migrate to new (:pep:`393`) APIs. * Removed ``PyUnicode_GetMax()``. Please migrate to new (:pep:`393`) APIs.
(Contributed by Inada Naoki in :issue:`41103`.) (Contributed by Inada Naoki in :issue:`41103`.)
* Removed ``PyLong_FromUnicode()``. Please migrate to :c:func:`PyLong_FromUnicodeObject`.
(Contributed by Inada Naoki in :issue:`41103`.)

View File

@ -102,8 +102,6 @@ PyAPI_FUNC(long long) PyLong_AsLongLongAndOverflow(PyObject *, int *);
PyAPI_FUNC(PyObject *) PyLong_FromString(const char *, char **, int); PyAPI_FUNC(PyObject *) PyLong_FromString(const char *, char **, int);
#ifndef Py_LIMITED_API #ifndef Py_LIMITED_API
Py_DEPRECATED(3.3)
PyAPI_FUNC(PyObject *) PyLong_FromUnicode(Py_UNICODE*, Py_ssize_t, int);
PyAPI_FUNC(PyObject *) PyLong_FromUnicodeObject(PyObject *u, int base); PyAPI_FUNC(PyObject *) PyLong_FromUnicodeObject(PyObject *u, int base);
PyAPI_FUNC(PyObject *) _PyLong_FromBytes(const char *, Py_ssize_t, int); PyAPI_FUNC(PyObject *) _PyLong_FromBytes(const char *, Py_ssize_t, int);
#endif #endif

View File

@ -0,0 +1 @@
Removed ``PyLong_FromUnicode()``.

View File

@ -1429,7 +1429,7 @@ PyNumber_Long(PyObject *o)
return NULL; return NULL;
if (PyUnicode_Check(o)) if (PyUnicode_Check(o))
/* The below check is done in PyLong_FromUnicode(). */ /* The below check is done in PyLong_FromUnicodeObject(). */
return PyLong_FromUnicodeObject(o, 10); return PyLong_FromUnicodeObject(o, 10);
if (PyBytes_Check(o)) if (PyBytes_Check(o))

View File

@ -2503,17 +2503,6 @@ _PyLong_FromBytes(const char *s, Py_ssize_t len, int base)
return NULL; return NULL;
} }
PyObject *
PyLong_FromUnicode(Py_UNICODE *u, Py_ssize_t length, int base)
{
PyObject *v, *unicode = PyUnicode_FromWideChar(u, length);
if (unicode == NULL)
return NULL;
v = PyLong_FromUnicodeObject(unicode, base);
Py_DECREF(unicode);
return v;
}
PyObject * PyObject *
PyLong_FromUnicodeObject(PyObject *u, int base) PyLong_FromUnicodeObject(PyObject *u, int base)
{ {