aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/data/collection/array.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/library/lux/data/collection/array.lux86
1 files changed, 43 insertions, 43 deletions
diff --git a/stdlib/source/library/lux/data/collection/array.lux b/stdlib/source/library/lux/data/collection/array.lux
index 73cc3e9d0..08cfac991 100644
--- a/stdlib/source/library/lux/data/collection/array.lux
+++ b/stdlib/source/library/lux/data/collection/array.lux
@@ -22,7 +22,7 @@
"#Array")
(type: .public (Array a)
- {#.Primitive ..type_name {#.Item a #.End}})
+ {.#Primitive ..type_name {.#Item a {.#End}}})
(with_expansions [<index_type> (primitive "java.lang.Long")
<elem_type> (primitive "java.lang.Object")
@@ -78,8 +78,8 @@
(template: (!read! <read!> <null?>)
[(let [output (<read!> index array)]
(if (<null?> output)
- #.None
- {#.Some output}))])
+ {.#None}
+ {.#Some output}))])
(def: .public (read! index array)
(All (_ a)
@@ -88,16 +88,16 @@
(for [@.old
(let [value ("jvm aaload" array index)]
(if ("jvm object null?" value)
- #.None
- {#.Some value}))
+ {.#None}
+ {.#Some value}))
@.jvm
(let [value (|> array
(:as <array_type>)
("jvm array read object" (!int index)))]
(if ("jvm object null?" value)
- #.None
- {#.Some (:expected value)}))
+ {.#None}
+ {.#Some (:expected value)}))
@.js (!read! "js array read" "js object undefined?")
@.python (!read! "python array read" "python object none?")
@@ -105,7 +105,7 @@
@.ruby (!read! "ruby array read" "ruby object nil?")
@.php (!read! "php array read" "php object null?")
@.scheme (!read! "scheme array read" "scheme object nil?")])
- #.None))
+ {.#None}))
(def: .public (write! index value array)
(All (_ a)
@@ -149,7 +149,7 @@
(All (_ a)
(-> Nat (Array a) Bit))
(case (..read! index array)
- {#.Some _}
+ {.#Some _}
true
_
@@ -159,10 +159,10 @@
(All (_ a)
(-> Nat (-> a a) (Array a) (Array a)))
(case (read! index array)
- #.None
+ {.#None}
array
- {#.Some value}
+ {.#Some value}
(write! index (transform value) array)))
(def: .public (upsert! index default transform array)
@@ -180,10 +180,10 @@
dest_array
(list\mix (function (_ offset target)
(case (read! (n.+ offset src_start) src_array)
- #.None
+ {.#None}
target
- {#.Some value}
+ {.#Some value}
(write! (n.+ offset dest_start) value target)))
dest_array
(list.indices length))))
@@ -192,10 +192,10 @@
(All (_ a) (-> (Array a) Nat))
(list\mix (function (_ idx count)
(case (read! idx array)
- #.None
+ {.#None}
count
- {#.Some _}
+ {.#Some _}
(++ count)))
0
(list.indices (size array))))
@@ -209,10 +209,10 @@
(-> (Predicate a) (Array a) (Array a)))
(list\mix (function (_ idx xs')
(case (read! idx xs)
- #.None
+ {.#None}
xs'
- {#.Some x}
+ {.#Some x}
(if (p x)
xs'
(delete! idx xs'))))
@@ -226,14 +226,14 @@
(loop [idx 0]
(if (n.< arr_size idx)
(case (read! idx xs)
- #.None
+ {.#None}
(recur (++ idx))
- {#.Some x}
+ {.#Some x}
(if (p x)
- {#.Some x}
+ {.#Some x}
(recur (++ idx))))
- #.None))))
+ {.#None}))))
(def: .public (example+ p xs)
(All (_ a)
@@ -242,24 +242,24 @@
(loop [idx 0]
(if (n.< arr_size idx)
(case (read! idx xs)
- #.None
+ {.#None}
(recur (++ idx))
- {#.Some x}
+ {.#Some x}
(if (p idx x)
- {#.Some [idx x]}
+ {.#Some [idx x]}
(recur (++ idx))))
- #.None))))
+ {.#None}))))
(def: .public (clone xs)
(All (_ a) (-> (Array a) (Array a)))
(let [arr_size (size xs)]
(list\mix (function (_ idx ys)
(case (read! idx xs)
- #.None
+ {.#None}
ys
- {#.Some x}
+ {.#Some x}
(write! idx x ys)))
(empty arr_size)
(list.indices arr_size))))
@@ -278,7 +278,7 @@
(def: (list|-default array)
(All (_ a) (-> (Array a) (List a)))
(loop [idx (-- (size array))
- output #.End]
+ output {.#End}]
(case idx
(^ (static ..underflow))
output
@@ -286,32 +286,32 @@
_
(recur (-- idx)
(case (read! idx array)
- {#.Some head}
- {#.Item head output}
+ {.#Some head}
+ {.#Item head output}
- #.None
+ {.#None}
output)))))
(def: (list|+default default array)
(All (_ a) (-> a (Array a) (List a)))
(loop [idx (-- (size array))
- output #.End]
+ output {.#End}]
(case idx
(^ (static ..underflow))
output
_
(recur (-- idx)
- {#.Item (maybe.else default (read! idx array))
+ {.#Item (maybe.else default (read! idx array))
output}))))
(def: .public (list default array)
(All (_ a) (-> (Maybe a) (Array a) (List a)))
(case default
- {#.Some default}
+ {.#Some default}
(list|+default default array)
- #.None
+ {.#None}
(list|-default array)))
(implementation: .public (equivalence (^open ",\[0]"))
@@ -324,10 +324,10 @@
(list\mix (function (_ idx prev)
(and prev
(case [(read! idx xs) (read! idx ys)]
- [#.None #.None]
+ [{.#None} {.#None}]
true
- [{#.Some x} {#.Some y}]
+ [{.#Some x} {.#Some y}]
(,\= x y)
_
@@ -356,10 +356,10 @@
(empty arr_size)
(list\mix (function (_ idx mb)
(case (read! idx ma)
- #.None
+ {.#None}
mb
- {#.Some x}
+ {.#Some x}
(write! idx (f x) mb)))
(empty arr_size)
(list.indices arr_size))
@@ -374,10 +374,10 @@
idx 0]
(if (n.< arr_size idx)
(case (read! idx xs)
- #.None
+ {.#None}
(recur so_far (++ idx))
- {#.Some value}
+ {.#Some value}
(recur (f value so_far) (++ idx)))
so_far)))))
@@ -390,11 +390,11 @@
(loop [idx 0]
(if (n.< size idx)
(case (..read! idx array)
- {#.Some value}
+ {.#Some value}
(<op> (predicate value)
(recur (++ idx)))
- #.None
+ {.#None}
(recur (++ idx)))
<init>)))))]