diff options
author | Christian Heimes <christian@cheimes.de> | 2007-11-29 22:35:39 (GMT) |
---|---|---|
committer | Christian Heimes <christian@cheimes.de> | 2007-11-29 22:35:39 (GMT) |
commit | a22e8bdfd92cd4f1bc3d60e91df6410c4efde6a0 (patch) | |
tree | 8f865b488f65ff8bab485bafe1cdd8516a65c679 /Include/dictobject.h | |
parent | 513b2ac76c1f56f5a6e0d07fee57d823819ee873 (diff) | |
download | cpython-a22e8bdfd92cd4f1bc3d60e91df6410c4efde6a0.zip cpython-a22e8bdfd92cd4f1bc3d60e91df6410c4efde6a0.tar.gz cpython-a22e8bdfd92cd4f1bc3d60e91df6410c4efde6a0.tar.bz2 |
Added all PyTypeObjects to the appropriate header files.
Before the patch a lot of internal types weren't available in the header files. The patch exposes the new iterators, views and some other types to all C modules. I've also renamed some of the types and tp_names.
Diffstat (limited to 'Include/dictobject.h')
-rw-r--r-- | Include/dictobject.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Include/dictobject.h b/Include/dictobject.h index fec6295..0d8a09b 100644 --- a/Include/dictobject.h +++ b/Include/dictobject.h @@ -89,10 +89,23 @@ struct _dictobject { }; PyAPI_DATA(PyTypeObject) PyDict_Type; +PyAPI_DATA(PyTypeObject) PyDictIterKey_Type; +PyAPI_DATA(PyTypeObject) PyDictIterValue_Type; +PyAPI_DATA(PyTypeObject) PyDictIterItem_Type; +PyAPI_DATA(PyTypeObject) PyDictKeys_Type; +PyAPI_DATA(PyTypeObject) PyDictItems_Type; +PyAPI_DATA(PyTypeObject) PyDictValues_Type; #define PyDict_Check(op) \ PyType_FastSubclass(Py_Type(op), Py_TPFLAGS_DICT_SUBCLASS) #define PyDict_CheckExact(op) (Py_Type(op) == &PyDict_Type) +#define PyDictKeys_Check(op) (Py_Type(op) == &PyDictKeys_Type) +#define PyDictItems_Check(op) (Py_Type(op) == &PyDictItems_Type) +#define PyDictValues_Check(op) (Py_Type(op) == &PyDictValues_Type) +/* This excludes Values, since they are not sets. */ +# define PyDictViewSet_Check(op) \ + (PyDictKeys_Check(op) || PyDictItems_Check(op)) + PyAPI_FUNC(PyObject *) PyDict_New(void); PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key); |