1
0
mirror of https://github.com/janet-lang/janet synced 2024-06-14 01:16:48 +00:00

Fix nil error on drop-until fn

This commit is contained in:
Quan Nguyen 2019-03-10 13:50:28 +07:00 committed by Calvin Rose
parent 6fa60820a3
commit 75dc08ff21
2 changed files with 11 additions and 1 deletions

View File

@ -703,7 +703,9 @@
the predicate, and abort on first failure. Returns a new array."
[pred ind]
(def i (find-index pred ind))
(array/slice ind i))
(if i
(array/slice ind i)
@[]))
(defn drop-while
"Same as (drop-until (complement pred) ind)."

View File

@ -80,4 +80,12 @@
(assert-no-error "break 3" (for i 0 10 (if (> i 8) (break i))))
(assert-no-error "break 4" ((fn [i] (if (> i 8) (break i))) 100))
# drop-until
(assert (deep= (drop-until pos? @[]) @[]) "drop-until 1")
(assert (deep= (drop-until pos? @[1 2 3]) @[1 2 3]) "drop-until 2")
(assert (deep= (drop-until pos? @[-1 -2 -3]) @[]) "drop-until 3")
(assert (deep= (drop-until pos? @[-1 -2 3]) @[3]) "drop-until 4")
(assert (deep= (drop-until pos? @[-1 1 -2]) @[1 -2]) "drop-until 5")
(end-suite)