diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-12-02 08:24:28 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-12-02 08:24:28 -0800 |
commit | 536216aa9932b9ab5627f7defb6608b67709c547 (patch) | |
tree | 0412f95c7ae616c4f29a0966fd09feec121ae0d3 /stdlib/doc-syms.tl | |
parent | 29ffa06feca713b458f810194b5a5a733c93a3f7 (diff) | |
download | txr-536216aa9932b9ab5627f7defb6608b67709c547.tar.gz txr-536216aa9932b9ab5627f7defb6608b67709c547.tar.bz2 txr-536216aa9932b9ab5627f7defb6608b67709c547.zip |
tuples: change to abstract iteration.
* lib.c (make_like): In the COBJ case, recognize an iterator
object. Pull out the underlying object and recurse on it.
This is needed in tuples_func, where make_like will now be
called on the abstract iterator, rather than the actual
sequence object.
(tuples_func): The incoming object is now an iterator, and not
a sequence; we need to handle it with iter_more, iter_item and
iter_step.
(tuples): Instead of nullify, begin iteration with
iter_begin, and use iter_more to test for empty.
In non-empty case, put propagate the iterator thorugh the lazy
cons car field, rather than the sequence.
Diffstat (limited to 'stdlib/doc-syms.tl')
0 files changed, 0 insertions, 0 deletions