aboutsummaryrefslogtreecommitdiff
path: root/stdlib/arrays.h
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2024-11-03 16:10:03 -0500
committerBruce Hill <bruce@bruce-hill.com>2024-11-03 16:10:03 -0500
commit7ccb7a8a9b8f10d30fd8fca01e849dcad354a855 (patch)
tree1f1bf3c3617f790f80598fa82b8fadafc576e853 /stdlib/arrays.h
parent39a58bc129fd9461d54b837bc1650c4c650aa333 (diff)
Use an RNG parameter for array:random(), array:shuffle(),
array:shuffled()
Diffstat (limited to 'stdlib/arrays.h')
-rw-r--r--stdlib/arrays.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/stdlib/arrays.h b/stdlib/arrays.h
index 03f00d49..5d452d30 100644
--- a/stdlib/arrays.h
+++ b/stdlib/arrays.h
@@ -70,10 +70,10 @@ Int_t Array$find(Array_t arr, void *item, const TypeInfo_t *type);
Int_t Array$first(Array_t arr, Closure_t predicate);
void Array$sort(Array_t *arr, Closure_t comparison, int64_t padded_item_size);
Array_t Array$sorted(Array_t arr, Closure_t comparison, int64_t padded_item_size);
-void Array$shuffle(Array_t *arr, int64_t padded_item_size);
-Array_t Array$shuffled(Array_t arr, int64_t padded_item_size);
-void *Array$random(Array_t arr);
-#define Array$random_value(arr, t) ({ Array_t _arr = arr; if (_arr.length == 0) fail("Cannot get a random value from an empty array!"); *(t*)Array$random(_arr); })
+void Array$shuffle(Array_t *arr, Closure_t rng, int64_t padded_item_size);
+Array_t Array$shuffled(Array_t arr, Closure_t rng, int64_t padded_item_size);
+void *Array$random(Array_t arr, Closure_t rng);
+#define Array$random_value(arr, rng, t) ({ Array_t _arr = arr; if (_arr.length == 0) fail("Cannot get a random value from an empty array!"); *(t*)Array$random(_arr, rng); })
Array_t Array$sample(Array_t arr, Int_t n, Array_t weights, int64_t padded_item_size);
Table_t Array$counts(Array_t arr, const TypeInfo_t *type);
void Array$clear(Array_t *array);