about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--063array.mu15
1 files changed, 7 insertions, 8 deletions
diff --git a/063array.mu b/063array.mu
index c4f732d3..001ff7a4 100644
--- a/063array.mu
+++ b/063array.mu
@@ -1,8 +1,8 @@
 scenario array-from-args [
   run [
     local-scope
-    x:&:@:char <- new-array 0, 1, 2
-    10:@:char/raw <- copy *x
+    x:&:@:num <- new-array 0, 1, 2
+    10:@:num/raw <- copy *x
   ]
   memory-should-contain [
     10 <- 3  # array length
@@ -12,26 +12,25 @@ scenario array-from-args [
   ]
 ]
 
-# create an array out of a list of scalar args
-# hacky; needs to be generic
-def new-array -> result:&:@:char [
+# create an array out of a list of args
+def new-array -> result:&:@:_elem [
   local-scope
   capacity:num <- copy 0
   {
     # while read curr-value
-    curr-value:char, exists?:bool <- next-ingredient
+    curr-value:_elem, exists?:bool <- next-ingredient
     break-unless exists?
     capacity <- add capacity, 1
     loop
   }
-  result <- new character:type, capacity
+  result <- new _elem:type, capacity
   rewind-ingredients
   i:num <- copy 0
   {
     # while read curr-value
     done?:bool <- greater-or-equal i, capacity
     break-if done?
-    curr-value:char, exists?:bool <- next-ingredient
+    curr-value:_elem, exists?:bool <- next-ingredient
     assert exists?, [error in rewinding ingredients to new-array]
     *result <- put-index *result, i, curr-value
     i <- add i, 1