[Python-Dev] PySet API (original) (raw)
Greg Ewing greg.ewing at canterbury.ac.nz
Tue Mar 28 07:28:57 CEST 2006
- Previous message: [Python-Dev] PySet API
- Next message: [Python-Dev] PySet API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Barry Warsaw wrote:
My PySetClear() raises a SystemError and returns -1 when the object is a frozen set.
Isn't SystemError a bit drastic? TypeError would be sufficient here, surely.
If PyObjectClear() is implemented something like int PyObjectClear(PyObject *o) { return (o->obtype->tpclear ? o->obtype->tpclear(o) : -1); } then you /would/ be able to clear a frozen set.
Hmmm, the problem here, I think, is that tp_clear is really only designed for use by the garbage collector. Giving anything else access to it is probably wrong.
Clearability is not a general feature in Python land -- a few types have a clear() method, but this is an ad hoc feature of the type concerned. I don't think it makes sense to have a general PyObject_Clear function at all.
-- Greg
- Previous message: [Python-Dev] PySet API
- Next message: [Python-Dev] PySet API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]