diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-12-18 23:13:47 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-12-18 23:13:47 -0800 |
commit | 61a8fde2872355b4e721f1c5145c77122c92c40e (patch) | |
tree | 3eb13f0f241b2ebd565cd2ba716d207c63451083 /lib.h | |
parent | 595e55ff7fd02106e7e04bd0db3c2737643fedbd (diff) | |
download | txr-61a8fde2872355b4e721f1c5145c77122c92c40e.tar.gz txr-61a8fde2872355b4e721f1c5145c77122c92c40e.tar.bz2 txr-61a8fde2872355b4e721f1c5145c77122c92c40e.zip |
* eval.c (bindings_helper): Fix format arguments.
(eval_init): Registered new functions: symbol-function,
func-get-form, func-get-env, functionp, interp-fun-p.
* lib.c (nappend2, getplist_f, improper_plist_to_alist):
tail variable renamed to avoid clash in macro.
(func_get_form, func_get_env, interp_fun_p): New functions.
* lib.h (func_get_form, func_get_env, interp_fun_p): Declared.
(list_collect): Fix macro not to throw error, but handle the case.
* match.c (vars_to_bindings, extract_bindings): tail variable
renamed to avoid clash in macro.
* txr.1: Documentation stubs.
Diffstat (limited to 'lib.h')
-rw-r--r-- | lib.h | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -469,7 +469,10 @@ val func_n2v(val (*fun)(val, val, val rest)); val func_n3v(val (*fun)(val, val, val, val rest)); val func_n4v(val (*fun)(val, val, val, val, val rest)); val func_interp(val env, val form); +val func_get_form(val fun); +val func_get_env(val fun); val functionp(val); +val interp_fun_p(val); val funcall(val fun); val funcall1(val fun, val arg); val funcall2(val fun, val arg1, val arg2); @@ -571,7 +574,7 @@ INLINE val eq(val a, val b) { return ((a) == (b) ? t : nil); } #define list_collect(PTAIL, OBJ) \ do { \ if (*PTAIL) \ - internal_error("mixed collect style"); \ + PTAIL = tail(*PTAIL); \ *PTAIL = cons(OBJ, nil); \ PTAIL = cdr_l(*PTAIL); \ } while(0) |