summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2024-07-23 19:01:40 -0700
committerKaz Kylheku <kaz@kylheku.com>2024-07-23 19:01:40 -0700
commit0ccb63709201223f00365b7ee99d3ef9aa5304d2 (patch)
tree955f3fd833ec2336739207b8b8c79f8fba574433 /tests
parentff259855afa02c7bd10994f1b42739901ec028a1 (diff)
downloadtxr-0ccb63709201223f00365b7ee99d3ef9aa5304d2.tar.gz
txr-0ccb63709201223f00365b7ee99d3ef9aa5304d2.tar.bz2
txr-0ccb63709201223f00365b7ee99d3ef9aa5304d2.zip
New function: seq-like.
* eval.c (zip_fun): Renamed to seq_like. (zipv): Follow rename of zip_fun. (eval_init): Register seq-like intrinsic. * tests/seq.tl: Some tests for make-like and seq-like, revealing a difference: make-like needs to be rewritten to use seq_build. * txr.1: Documented.
Diffstat (limited to 'tests')
-rw-r--r--tests/012/seq.tl14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/012/seq.tl b/tests/012/seq.tl
index 171ad300..97549500 100644
--- a/tests/012/seq.tl
+++ b/tests/012/seq.tl
@@ -1598,3 +1598,17 @@
[(wherequal 'c) '(a b c a b c)] (2 5)
[(wherequal 3) '(3 3.0 b c a b c)] (0)
[(wherequal 3) 0..9] (3))
+
+(mtest
+ (make-like '(1 2 3) "") (1 2 3)
+ (make-like '(#\a #\b #\c) "") "abc"
+ (make-like '(#\a #\b 3) "") :error
+ (make-like '(1 2 3) #()) #(1 2 3)
+ (make-like '(1 2 3) #b'') #b'010203')
+
+(mtest
+ (seq-like "" 1 2 3) (1 2 3)
+ (seq-like "" #\a #\b #\c) "abc"
+ (seq-like "" #\a #\b 3) (#\a #\b 3)
+ (seq-like #() 1 2 3) #(1 2 3)
+ (seq-like #b'' 1 2 3) #b'010203')