diff options
author | Victor Stinner <vstinner@python.org> | 2020-02-07 08:17:07 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-07 08:17:07 (GMT) |
commit | d2ec81a8c99796b51fb8c49b77a7fe369863226f (patch) | |
tree | d88e7cbe89f65366d5591338fbe59a71192950db /Include/object.h | |
parent | daa9756cb6395323d6f291efe5c7d7fdc6b2e9d8 (diff) | |
download | cpython-d2ec81a8c99796b51fb8c49b77a7fe369863226f.zip cpython-d2ec81a8c99796b51fb8c49b77a7fe369863226f.tar.gz cpython-d2ec81a8c99796b51fb8c49b77a7fe369863226f.tar.bz2 |
bpo-39573: Add Py_SET_TYPE() function (GH-18394)
Add Py_SET_TYPE() function to set the type of an object.
Diffstat (limited to 'Include/object.h')
-rw-r--r-- | Include/object.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Include/object.h b/Include/object.h index 0b63051..eb887f4 100644 --- a/Include/object.h +++ b/Include/object.h @@ -128,6 +128,12 @@ static inline void _Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) { } #define Py_SET_REFCNT(ob, refcnt) _Py_SET_REFCNT(_PyObject_CAST(ob), refcnt) +static inline void _Py_SET_TYPE(PyObject *ob, PyTypeObject *type) { + ob->ob_type = type; +} +#define Py_SET_TYPE(ob, type) _Py_SET_TYPE(_PyObject_CAST(ob), type) + + /* Type objects contain a string containing the type name (to help somewhat in debugging), the allocation parameters (see PyObject_New() and |