summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2019-04-21 03:36:43 -0700
committerKaz Kylheku <kaz@kylheku.com>2019-04-21 03:36:43 -0700
commiteffd37e7ed64dd0300b37af1a102febea84c9504 (patch)
tree84b70cf4e842b13a1244d6420f111e085d78c122 /eval.c
parent6c6d60171a53742ae856a59f063a229e990141b6 (diff)
downloadtxr-effd37e7ed64dd0300b37af1a102febea84c9504.tar.gz
txr-effd37e7ed64dd0300b37af1a102febea84c9504.tar.bz2
txr-effd37e7ed64dd0300b37af1a102febea84c9504.zip
New function: window-mapdo.
* lib.c (enum wmap_op): New enum type. (window_map_list): Use enum wmap_op for last argument instead of Boolean flag. If the argument is WMAP_MAPDO, do not accumulate. (window_map_vec, window_map, window_mapped): Adjust to new enum argument. (window_mapdo): New function. * lib.h (window_mapdo): Declared. * eval.c (eval_init): window-mapdo intrinsic registered. * txr.1: Documented.
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index df6b23e1..a91d7bc8 100644
--- a/eval.c
+++ b/eval.c
@@ -6404,6 +6404,7 @@ void eval_init(void)
reg_fun(intern(lit("maprend"), user_package), func_n1v(maprendv));
reg_fun(intern(lit("window-map"), user_package), func_n4(window_map));
reg_fun(intern(lit("window-mappend"), user_package), func_n4(window_mappend));
+ reg_fun(intern(lit("window-mapdo"), user_package), func_n4(window_mapdo));
{
val apply_f = func_n1v(applyv);
reg_fun(apply_s, apply_f);