diff options
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/library/lux/data/collection/array.lux | 86 |
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>)))))] |