diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2024-02-26 10:56:43 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2024-02-26 10:56:43 -0800 |
commit | c1782706c0e162e11e2ea777dd02a249db2eb3f8 (patch) | |
tree | fe9d60a11e1676915a2fb92dd124f2e461b772bd | |
parent | 5c591d3aaf1e98f415a594d57eb46955342aee79 (diff) | |
download | txr-c1782706c0e162e11e2ea777dd02a249db2eb3f8.tar.gz txr-c1782706c0e162e11e2ea777dd02a249db2eb3f8.tar.bz2 txr-c1782706c0e162e11e2ea777dd02a249db2eb3f8.zip |
keep-if: don't report as remove-if in errors.
* lib.c (rem_if_impl): New static function, based on renaming
remove_if, and adding a self parameter.
(remove_if): Now wrapper around rem_if_impl.
(keep_if): Retarget to rem_if_impl, passing "keep-if" name.
-rw-r--r-- | lib.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -3089,9 +3089,8 @@ static val rem_impl(val (*eqfun)(val, val), val name, } } -val remove_if(val pred, val seq_in, val keyfun_in) +static val rem_if_impl(val pred, val seq_in, val keyfun_in, val self) { - val self = lit("remove-if"); val keyfun = default_null_arg(keyfun_in); switch (type(seq_in)) { @@ -3188,9 +3187,14 @@ val keepqual(val obj, val seq, val keyfun) return rem_impl(nequal, lit("keepqual"), obj, seq, keyfun); } +val remove_if(val pred, val seq, val keyfun) +{ + return rem_if_impl(pred, seq, keyfun, lit("remove-if")); +} + val keep_if(val pred, val seq, val keyfun) { - return remove_if(notf(pred), seq, keyfun); + return rem_if_impl(notf(pred), seq, keyfun, lit("keep-if")); } val keep_keys_if(val pred, val seq_in, val keyfun_in) |