summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2021-02-28 14:37:37 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2021-02-28 14:37:37 +0000
commitaa19f11dbdbaf06afc1a7f053d9bcd26e718ffb3 (patch)
treeeeef39ea09becfc53ffc83a85efc871165a20a70 /doc
parent348a909ab9fe4ec26cdf5e198a6621205f9656d3 (diff)
merge revision(s) 3c93ed59: [Backport #16514]
Update documentation for Array/Hash Argument section of methods.rdoc [Bug #16514] --- doc/syntax/methods.rdoc | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_6@67900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'doc')
-rw-r--r--doc/syntax/methods.rdoc15
1 files changed, 13 insertions, 2 deletions
diff --git a/doc/syntax/methods.rdoc b/doc/syntax/methods.rdoc
index a47c1a3cbf..5d070f8586 100644
--- a/doc/syntax/methods.rdoc
+++ b/doc/syntax/methods.rdoc
@@ -355,12 +355,23 @@ converted to an Array:
gather_arguments 1, 2, 3 # prints [1, 2, 3]
-The array argument must be the last positional argument, it must appear before
-any keyword arguments.
+The array argument must appear before any keyword arguments.
+
+It is possible to gather arguments at the beginning or in the middle:
+
+ def gather_arguments(first_arg, *middle_arguments, last_arg)
+ p middle_arguments
+ end
+
+ gather_arguments 1, 2, 3, 4 # prints [2, 3]
The array argument will capture a Hash as the last entry if a hash was sent by
the caller after all positional arguments.
+ def gather_arguments(*arguments)
+ p arguments
+ end
+
gather_arguments 1, a: 2 # prints [1, {:a=>2}]
However, this only occurs if the method does not declare any keyword arguments.