[Python-Dev] Re: tp_clear return value
Neil Schemenauer
nas@python.ca
Wed, 9 Apr 2003 14:41:04 -0700
"Martin v. L?wis" wrote:
> Neil Schemenauer wrote:
> >In retrospect, I think both tp_traverse and tp_clear should have
> >returned "void".
>
> While this is true for tp_clear, tp_traverse is actually more general.
> gc.get_referrers uses tp_traverse, for something other than collection.
Could the visit procedure keep track of errors? Something like:
struct result {
int error; /* true if an error occured while traversing */
/* other results */
}
static void
myvisit(PyObject* obj, struct result *r)
{
if (!r->error) {
<do stuff, set r->error of error occurs>
}
}