diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2014-06-15 20:54:52 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2014-06-15 20:54:52 -0700 |
commit | 548dd7697516a2fea8930d3fa9e88ea48d5ab630 (patch) | |
tree | be6c1d61f3e1e982a5451007a2f95a4a2ad693ab /lib.h | |
parent | 9127cdb5d591d2a10919dc9fa2c75f9e44a1d093 (diff) | |
download | txr-548dd7697516a2fea8930d3fa9e88ea48d5ab630.tar.gz txr-548dd7697516a2fea8930d3fa9e88ea48d5ab630.tar.bz2 txr-548dd7697516a2fea8930d3fa9e88ea48d5ab630.zip |
* eval.c (eval_init): Register pos_max, pos_min, find_max,
find_min and seqp as intrinsics.
* lib.c (gt_f, lt_f): New variables.
(to_seq): renamed to toseq.
(seqp): New function.
(minmax): New static function.
(replace_str, replace_vec): Follow to_seq renaming.
(find_max, find_min, pos_max, pos_min): New functions.
(obj_init): gc-protect and initialize gt_f and lt_f.
* lib.h (gt_f, lt_f): Declared.
(to_seq): Declaration updated to toseq.
(seqp, find_max, find_min, pos_max, pos_min): Declared.
* txr.1: Updated.
Diffstat (limited to 'lib.h')
-rw-r--r-- | lib.h | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -377,7 +377,7 @@ extern val nothrow_k, args_k, colon_k, auto_k; extern val null_string; extern val null_list; /* (nil) */ -extern val identity_f, equal_f, eql_f, eq_f, car_f, cdr_f, null_f; +extern val identity_f, equal_f, eql_f, eq_f, gt_f, lt_f, car_f, cdr_f, null_f; extern const wchar_t *progname; @@ -426,9 +426,10 @@ val upop(val *plist, val *pundo); val push(val v, val *plist); val copy_list(val list); val make_like(val list, val thatobj); -val to_seq(val obj); +val toseq(val obj); val tolist(val seq); val nullify(val seq); +val seqp(val obj); val nreverse(val in); val reverse(val in); val append2(val list1, val list2); @@ -736,11 +737,15 @@ val sort(val seq, val lessfun, val keyfun); val multi_sort(val lists, val funcs, val key_funcs); val find(val list, val key, val testfun, val keyfun); val find_if(val pred, val list, val key); +val find_max(val seq, val testfun, val keyfun); +val find_min(val seq, val testfun, val keyfun); val posqual(val obj, val list); val posql(val obj, val list); val posq(val obj, val list); val pos(val list, val key, val testfun, val keyfun); val pos_if(val pred, val list, val key); +val pos_max(val seq, val testfun, val keyfun); +val pos_min(val seq, val testfun, val keyfun); val set_diff(val list1, val list2, val testfun, val keyfun); val copy(val seq); val length(val seq); |