Lines Matching refs:closure
257 PyFunction_SetClosure(PyObject *op, PyObject *closure)
263 if (closure == Py_None)
264 closure = NULL;
265 else if (PyTuple_Check(closure)) {
266 Py_INCREF(closure);
270 "expected tuple for closure, got '%.100s'",
271 Py_TYPE(closure)->tp_name);
275 Py_XSETREF(((PyFunctionObject *)op)->func_closure, closure);
584 The closure must correspond to the free variables of the code object.
587 closure = NULL
589 len(closure) == len(code.co_freevars)
590 for every elt in closure, type(elt) == cell
604 closure: object = None
612 PyObject *name, PyObject *defaults, PyObject *closure)
628 if (!PyTuple_Check(closure)) {
629 if (code->co_nfreevars && closure == Py_None) {
631 "arg 5 (closure) must be tuple");
634 else if (closure != Py_None) {
636 "arg 5 (closure) must be None or tuple");
641 /* check that the closure is well-formed */
642 nclosure = closure == Py_None ? 0 : PyTuple_GET_SIZE(closure);
645 "%U requires closure of length %zd, not %zd",
650 PyObject *o = PyTuple_GET_ITEM(closure, i);
653 "arg 5 (closure) expected cell, found %s",
675 if (closure != Py_None) {
676 Py_INCREF(closure);
677 newfunc->func_closure = closure;
937 cm_get___isabstractmethod__(classmethod *cm, void *closure)
1135 sm_get___isabstractmethod__(staticmethod *sm, void *closure)