Пример #1
0
static int
WorkRequest_tp_traverse(WorkRequest *self, visitproc visit, void *arg)
{
    Py_VISIT(self->work_cb);
    Py_VISIT(self->done_cb);
    return RequestType.tp_traverse((PyObject *)self, visit, arg);
}
Пример #2
0
static int
FSRequest_tp_traverse(FSRequest *self, visitproc visit, void *arg)
{
    Py_VISIT(self->callback);
    Py_VISIT(self->path);
    Py_VISIT(self->result);
    Py_VISIT(self->error);
    return RequestType.tp_traverse((PyObject *)self, visit, arg);
}
Пример #3
0
static int
exc_traverse (zbarException *self,
              visitproc visit,
              void *arg)
{
    Py_VISIT(self->obj);
    PyTypeObject *base = (PyTypeObject*)PyExc_Exception;
    return(base->tp_traverse((PyObject*)self, visit, arg));
}
Пример #4
0
static int __Pyx_call_next_tp_traverse(PyObject* obj, visitproc v, void *a, traverseproc current_tp_traverse) {
    PyTypeObject* type = Py_TYPE(obj);
    /* try to find the first parent type that has a different tp_traverse() function */
    while (type && type->tp_traverse != current_tp_traverse)
        type = type->tp_base;
    while (type && type->tp_traverse == current_tp_traverse)
        type = type->tp_base;
    if (type && type->tp_traverse)
        return type->tp_traverse(obj, v, a);
    // FIXME: really ignore?
    return 0;
}
Пример #5
0
static int
GNIRequest_tp_traverse(GNIRequest *self, visitproc visit, void *arg)
{
    Py_VISIT(self->callback);
    return RequestType.tp_traverse((PyObject *)self, visit, arg);
}