]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
At 2.2, the Py<type>_Check() family of API functions (macros) changed
authorAndrew MacIntyre <andymac@bullseye.apana.org.au>
Fri, 26 Dec 2003 00:20:53 +0000 (00:20 +0000)
committerAndrew MacIntyre <andymac@bullseye.apana.org.au>
Fri, 26 Dec 2003 00:20:53 +0000 (00:20 +0000)
semantics to include subtypes.  Most concrete object APIs then had
a Py<type>_CheckExact() macro added to test for an object's type
not including subtypes.

The PyDict_CheckExact() macro wasn't created at that time, so I've added
it for API completeness/symmetry - even though nobody has complained
about its absence in the time since 2.2 was released.

Not a backport candidate.

Include/dictobject.h

index 554b82e5a30f464d9c08c8943cf8c7da5570b055..7fa400a5b272eea7c6105f11f9317dda71fd0a53 100644 (file)
@@ -87,6 +87,7 @@ struct _dictobject {
 PyAPI_DATA(PyTypeObject) PyDict_Type;
 
 #define PyDict_Check(op) PyObject_TypeCheck(op, &PyDict_Type)
+#define PyList_CheckExact(op) ((op)->ob_type == &PyDict_Type)
 
 PyAPI_FUNC(PyObject *) PyDict_New(void);
 PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key);