From 1c5f7aace77bb60e5939805f3eaca0aabf59e965 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Sat, 19 Apr 2025 23:38:12 -0700 Subject: [PATCH] Avoid unnecessary hash allocation for keyword splat Found by the performance warning in Ruby feature 21274. --- lib/optparse.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/optparse.rb b/lib/optparse.rb index e1069b3..41ea1a9 100644 --- a/lib/optparse.rb +++ b/lib/optparse.rb @@ -1846,7 +1846,8 @@ def permute(*argv, **keywords) # def permute!(argv = default_argv, **keywords) nonopts = [] - order!(argv, **keywords, &nonopts.method(:<<)) + method = nonopts.method(:<<) + order!(argv, **keywords, &method) argv[0, 0] = nonopts argv end