From a24eeee5567a14841b37d9a3428e14e4f3c45c07 Mon Sep 17 00:00:00 2001 From: Koichi Sasada Date: Sat, 13 Nov 2021 02:15:09 +0900 Subject: Use `Primitive.mandatory_only?` for `Array#sample` --- array.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'array.rb') diff --git a/array.rb b/array.rb index 05ce60773e..b9fa9844e6 100644 --- a/array.rb +++ b/array.rb @@ -58,6 +58,12 @@ class Array # a.sample(random: Random.new(1)) #=> 6 # a.sample(4, random: Random.new(1)) #=> [6, 10, 9, 2] def sample(n = (ary = false), random: Random) - Primitive.rb_ary_sample(random, n, ary) + if Primitive.mandatory_only? + # Primitive.cexpr! %{ rb_ary_sample(self, rb_cRandom, Qfalse, Qfalse) } + Primitive.ary_sample0 + else + # Primitive.cexpr! %{ rb_ary_sample(self, random, n, ary) } + Primitive.ary_sample(random, n, ary) + end end end -- cgit v1.2.3