diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib.c | 21 | ||||
-rw-r--r-- | lib.h | 3 |
3 files changed, 30 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2014-12-23 Kaz Kylheku <kaz@kylheku.com> + * lib.c (func_n1ov, func_n2ov, func_n3ov): New functions. + + * lib.h (func_n1ov, func_n2ov, func_n3ov): Declared. + +2014-12-23 Kaz Kylheku <kaz@kylheku.com> + * lib.c (func_n0o): Useless, unused function removed. * lib.h (func_n0o): Declaration removed. @@ -3989,6 +3989,27 @@ val func_n4o(val (*fun)(val, val, val, val), int reqargs) return obj; } +val func_n1ov(val (*fun)(val, val rest), int reqargs) +{ + val obj = func_n1v(fun); + obj->f.optargs = 1 - reqargs; + return obj; +} + +val func_n2ov(val (*fun)(val, val, val rest), int reqargs) +{ + val obj = func_n2v(fun); + obj->f.optargs = 2 - reqargs; + return obj; +} + +val func_n3ov(val (*fun)(val, val, val, val rest), int reqargs) +{ + val obj = func_n3v(fun); + obj->f.optargs = 3 - reqargs; + return obj; +} + val func_interp(val env, val form) { val obj = make_obj(); @@ -714,6 +714,9 @@ val func_n1o(val (*fun)(val), int reqargs); val func_n2o(val (*fun)(val, val), int reqargs); val func_n3o(val (*fun)(val, val, val), int reqargs); val func_n4o(val (*fun)(val, val, val, val), int reqargs); +val func_n1ov(val (*fun)(val, val rest), int reqargs); +val func_n2ov(val (*fun)(val, val, val rest), int reqargs); +val func_n3ov(val (*fun)(val, val, val, val rest), int reqargs); val func_interp(val env, val form); val func_get_form(val fun); val func_get_env(val fun); |