diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-06-08 07:46:05 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-06-08 07:46:05 -0700 |
commit | f791ed11cf3a801990f26a0ed7c0455c05df59df (patch) | |
tree | c18cea3da5d53fcf2421577ab9f9dce7774d8f8d /tests | |
parent | 5b2f81b1c492c61c8046b46f271d6125a83d19b7 (diff) | |
download | txr-f791ed11cf3a801990f26a0ed7c0455c05df59df.tar.gz txr-f791ed11cf3a801990f26a0ed7c0455c05df59df.tar.bz2 txr-f791ed11cf3a801990f26a0ed7c0455c05df59df.zip |
lib: new function, fill-vec.
* eval.c (eval_init): Register fill-vec intrinsic.
* lib.c (fill_vec): New function.
* lib.h (fill_vec): Declared.
* tests/010/vec.tl: New file.
* txr.1: Documented.
* share/txr/stdlib/doc-syms.tl: Updated.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/010/vec.tl | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/010/vec.tl b/tests/010/vec.tl new file mode 100644 index 00000000..c1d435b9 --- /dev/null +++ b/tests/010/vec.tl @@ -0,0 +1,32 @@ +(load "../common") + +(let ((v0 (vec)) + (v3 (vec 1 2 3))) + (mtest + v0 #() + v3 #(1 2 3) + (fill-vec v0 nil) #() + (fill-vec v0 nil -1 -1) :error + (fill-vec v0 nil 1 1) :error + (fill-vec v3 nil 0 0) #(1 2 3) + (fill-vec v3 nil 1 1) #(1 2 3) + (fill-vec v3 nil 2 2) #(1 2 3) + (fill-vec v3 nil 3 3) #(1 2 3) + (fill-vec v3 nil -3 -3) #(1 2 3) + (fill-vec v3 nil 4 0) :error + (fill-vec v3 nil 4 4) :error + (fill-vec v3 nil 0 4) :error + (fill-vec v3 nil -1 0) #(1 2 3) + (fill-vec v3 nil 1 0) #(1 2 3) + (fill-vec v3 nil 2 1) #(1 2 3) + (fill-vec v3 nil 3 2) #(1 2 3) + (fill-vec v3 nil -4 -3) :error + (fill-vec v3 nil -3 -4) :error + (fill-vec v3 nil) #(nil nil nil) + (fill-vec v3 1 0 1) #(1 nil nil) + (fill-vec v3 2 1 2) #(1 2 nil) + (fill-vec v3 3 2 3) #(1 2 3) + (fill-vec v3 0 1) #(1 0 0) + (fill-vec v3 2 -1) #(1 0 2) + (fill-vec v3 3 -3) #(3 3 3)) + (fill-vec v3 0 -2 -1) #(3 0 3)) |