summaryrefslogtreecommitdiffstats
path: root/lib.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-06-15 20:54:52 -0700
committerKaz Kylheku <kaz@kylheku.com>2014-06-15 20:54:52 -0700
commit548dd7697516a2fea8930d3fa9e88ea48d5ab630 (patch)
treebe6c1d61f3e1e982a5451007a2f95a4a2ad693ab /lib.h
parent9127cdb5d591d2a10919dc9fa2c75f9e44a1d093 (diff)
downloadtxr-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.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib.h b/lib.h
index 31ca1413..548a0696 100644
--- a/lib.h
+++ b/lib.h
@@ -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);