summaryrefslogtreecommitdiffstats
path: root/stdlib/vm-param.tl
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2024-02-28 19:09:58 -0800
committerKaz Kylheku <kaz@kylheku.com>2024-02-28 19:09:58 -0800
commit001147e1d3a37718c4b75c2d56ea475455707464 (patch)
tree6759908b1bd12d7a2f946deb49ed91118c05bfb0 /stdlib/vm-param.tl
parentd12b6d6896a9838abd925feae34f6c01d535f223 (diff)
downloadtxr-001147e1d3a37718c4b75c2d56ea475455707464.tar.gz
txr-001147e1d3a37718c4b75c2d56ea475455707464.tar.bz2
txr-001147e1d3a37718c4b75c2d56ea475455707464.zip
seq_build: seq_pend must be nondestructive for lists.
Let's have both a seq_pend and seq_nconc, where seq_nconc can reuse the pieces of list passed to it. * lib.h (struct seq_build_ops): New member, nconc. (seq_build_ops_init): Add nconc parameter and initializer. (seq_nconc): Function declared. * lib.c (seq_build_list_pend): Switch to list_collect_append, otherwise mappend behaves destructively. (seq_build_list_nconc): New function. (sb_vec_ops, sb_str_ops, sb_buf_ops, sb_struct_ops, sb_carray_ops): Use seq_build_generic_pend for nconc operation. (sb_list_ops): Use new seq_build_list_nconc for nconc operation. (sb_finished_ops): Use null pointer for nconc operation. (seq_nconc): New function.
Diffstat (limited to 'stdlib/vm-param.tl')
0 files changed, 0 insertions, 0 deletions