summaryrefslogtreecommitdiffstats
path: root/autoload.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2023-05-28 08:41:38 -0700
committerKaz Kylheku <kaz@kylheku.com>2023-05-28 08:41:38 -0700
commitec3c1573e7cc8ce1d0f884fae30c4171d669c95f (patch)
tree3fa3a471133d7bb5e47c85eae2c4b62766d13914 /autoload.c
parent480f22e6979253a89f1739b96614105e8029ad15 (diff)
downloadtxr-ec3c1573e7cc8ce1d0f884fae30c4171d669c95f.tar.gz
txr-ec3c1573e7cc8ce1d0f884fae30c4171d669c95f.tar.bz2
txr-ec3c1573e7cc8ce1d0f884fae30c4171d669c95f.zip
New macro: expander-let.
* stdlib/expander-let.tl: New file. * autoload.c (expander_let_set_entries, expander_let_instantiate); New static functions. (autoload_init): Register autoloading of above new file via above new functions. * txr.1: Documented. * stdlib/doc-syms.tl: Updated.
Diffstat (limited to 'autoload.c')
-rw-r--r--autoload.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/autoload.c b/autoload.c
index 0f0f3039..040b04f4 100644
--- a/autoload.c
+++ b/autoload.c
@@ -918,6 +918,22 @@ static val constfun_instantiate(void)
return nil;
}
+static val expander_let_set_entries(val fun)
+{
+ val sys_name[] = {
+ lit("expander-let"),
+ nil
+ };
+ autoload_set(al_fun, sys_name, fun);
+ return nil;
+}
+
+static val expander_let_instantiate(void)
+{
+ load(scat2(stdlib_path, lit("expander-let")));
+ return nil;
+}
+
val autoload_reg(val (*instantiate)(void),
val (*set_entries)(val))
{
@@ -985,6 +1001,7 @@ void autoload_init(void)
autoload_reg(doc_instantiate, doc_set_entries);
autoload_reg(pic_instantiate, pic_set_entries);
autoload_reg(constfun_instantiate, constfun_set_entries);
+ autoload_reg(expander_let_instantiate, expander_let_set_entries);
reg_fun(intern(lit("autoload-try-fun"), system_package), func_n1(autoload_try_fun));
}