Lines Matching defs:arg
42 ga_traverse(PyObject *self, visitproc visit, void *arg)
292 PyObject *arg = PyTuple_GET_ITEM(subparams, i);
293 Py_ssize_t iparam = tuple_index(params, nparams, arg);
296 arg = argitems[iparam];
297 if (Py_TYPE(param)->tp_iter && PyTuple_Check(arg)) { // TypeVarTuple
299 &PyTuple_GET_ITEM(arg, 0),
300 PyTuple_GET_SIZE(arg));
307 Py_INCREF(arg);
308 PyTuple_SET_ITEM(subargs, j, arg);
325 _is_unpacked_typevartuple(PyObject *arg)
328 if (PyType_Check(arg)) { // TODO: Add test
331 int res = _PyObject_LookupAttr(arg, &_Py_ID(__typing_is_unpacked_typevartuple__), &tmp);
340 _unpacked_tuple_args(PyObject *arg)
343 assert(!PyType_Check(arg));
345 if (_PyGenericAlias_Check(arg) &&
346 ((gaobject *)arg)->starred &&
347 ((gaobject *)arg)->origin == (PyObject *)&PyTuple_Type)
349 result = ((gaobject *)arg)->args;
354 if (_PyObject_LookupAttr(arg, &_Py_ID(__typing_unpacked_tuple_args__), &result) > 0) {
460 PyObject *arg = PyTuple_GET_ITEM(args, iarg);
461 if (PyType_Check(arg)) {
462 Py_INCREF(arg);
463 PyTuple_SET_ITEM(newargs, jarg, arg);
468 int unpack = _is_unpacked_typevartuple(arg);
475 if (_PyObject_LookupAttr(arg, &_Py_ID(__typing_subst__), &subst) < 0) {
481 Py_ssize_t iparam = tuple_index(parameters, nparams, arg);
483 arg = PyObject_CallOneArg(subst, argitems[iparam]);
487 arg = subs_tvars(arg, parameters, argitems, nitems);
489 if (arg == NULL) {
496 &PyTuple_GET_ITEM(arg, 0), PyTuple_GET_SIZE(arg));
497 Py_DECREF(arg);
504 PyTuple_SET_ITEM(newargs, jarg, arg);
872 ga_iter_traverse(gaiterobject *gi, visitproc visit, void *arg)