Home | History | Annotate | Download | only in Modules

Lines Matching refs:ig

415     itemgetterobject *ig;
430 ig = PyObject_GC_New(itemgetterobject, &itemgetter_type);
431 if (ig == NULL)
435 ig->item = item;
436 ig->nitems = nitems;
438 PyObject_GC_Track(ig);
439 return (PyObject *)ig;
443 itemgetter_dealloc(itemgetterobject *ig)
445 PyObject_GC_UnTrack(ig);
446 Py_XDECREF(ig->item);
447 PyObject_GC_Del(ig);
451 itemgetter_traverse(itemgetterobject *ig, visitproc visit, void *arg)
453 Py_VISIT(ig->item);
458 itemgetter_call(itemgetterobject *ig, PyObject *args, PyObject *kw)
461 Py_ssize_t i, nitems=ig->nitems;
468 return PyObject_GetItem(obj, ig->item);
470 assert(PyTuple_Check(ig->item));
471 assert(PyTuple_GET_SIZE(ig->item) == nitems);
479 item = PyTuple_GET_ITEM(ig->item, i);
491 itemgetter_repr(itemgetterobject *ig)
496 int status = Py_ReprEnter((PyObject *)ig);
500 return PyUnicode_FromFormat("%s(...)", Py_TYPE(ig)->tp_name);
503 reprfmt = ig->nitems == 1 ? "%s(%R)" : "%s%R";
504 repr = PyUnicode_FromFormat(reprfmt, Py_TYPE(ig)->tp_name, ig->item);
505 Py_ReprLeave((PyObject *)ig);
510 itemgetter_reduce(itemgetterobject *ig)
512 if (ig->nitems == 1)
513 return Py_BuildValue("O(O)", Py_TYPE(ig), ig->item);
514 return PyTuple_Pack(2, Py_TYPE(ig), ig->item);