Mercurial > cpython-lru_cache-weakref
diff Modules/itertoolsmodule.c @ 32682:bc4dd31c73fd legacy-trunk
Exercise Jim's VISIT macro.
| author | Raymond Hettinger <python@rcn.com> |
|---|---|
| date | Thu, 15 Jul 2004 05:32:47 +0000 |
| parents | 544f2172363d |
| children | c2c49ee727d0 |
line wrap: on
line diff
--- a/Modules/itertoolsmodule.c Thu Jul 15 04:54:57 2004 +0000 +++ b/Modules/itertoolsmodule.c Thu Jul 15 05:32:47 2004 +0000 @@ -64,33 +64,11 @@ static int groupby_traverse(groupbyobject *gbo, visitproc visit, void *arg) { - int err; - - if (gbo->it) { - err = visit(gbo->it, arg); - if (err) - return err; - } - if (gbo->keyfunc) { - err = visit(gbo->keyfunc, arg); - if (err) - return err; - } - if (gbo->tgtkey) { - err = visit(gbo->tgtkey, arg); - if (err) - return err; - } - if (gbo->currkey) { - err = visit(gbo->currkey, arg); - if (err) - return err; - } - if (gbo->currvalue) { - err = visit(gbo->currvalue, arg); - if (err) - return err; - } + Py_VISIT(gbo->it); + Py_VISIT(gbo->keyfunc); + Py_VISIT(gbo->tgtkey); + Py_VISIT(gbo->currkey); + Py_VISIT(gbo->currvalue); return 0; } @@ -671,18 +649,8 @@ static int cycle_traverse(cycleobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->saved) { - err = visit(lz->saved, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->saved); return 0; } @@ -820,18 +788,8 @@ static int dropwhile_traverse(dropwhileobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->func); return 0; } @@ -971,18 +929,8 @@ static int takewhile_traverse(takewhileobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->func); return 0; } @@ -1167,8 +1115,7 @@ static int islice_traverse(isliceobject *lz, visitproc visit, void *arg) { - if (lz->it) - return visit(lz->it, arg); + Py_VISIT(lz->it); return 0; } @@ -1309,18 +1256,8 @@ static int starmap_traverse(starmapobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->func); return 0; } @@ -1462,18 +1399,8 @@ static int imap_traverse(imapobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->iters) { - err = visit(lz->iters, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->iters); + Py_VISIT(lz->func); return 0; } @@ -1648,8 +1575,7 @@ static int chain_traverse(chainobject *lz, visitproc visit, void *arg) { - if (lz->ittuple) - return visit(lz->ittuple, arg); + Py_VISIT(lz->ittuple); return 0; } @@ -1778,18 +1704,8 @@ static int ifilter_traverse(ifilterobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->func); return 0; } @@ -1929,18 +1845,8 @@ static int ifilterfalse_traverse(ifilterfalseobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->it) { - err = visit(lz->it, arg); - if (err) - return err; - } - if (lz->func) { - err = visit(lz->func, arg); - if (err) - return err; - } + Py_VISIT(lz->it); + Py_VISIT(lz->func); return 0; } @@ -2199,18 +2105,8 @@ static int izip_traverse(izipobject *lz, visitproc visit, void *arg) { - int err; - - if (lz->ittuple) { - err = visit(lz->ittuple, arg); - if (err) - return err; - } - if (lz->result) { - err = visit(lz->result, arg); - if (err) - return err; - } + Py_VISIT(lz->ittuple); + Py_VISIT(lz->result); return 0; } @@ -2357,8 +2253,7 @@ static int repeat_traverse(repeatobject *ro, visitproc visit, void *arg) { - if (ro->element) - return visit(ro->element, arg); + Py_VISIT(ro->element); return 0; }
