diff options
-rw-r--r-- | doc/syntax/methods.rdoc | 15 | ||||
-rw-r--r-- | version.h | 2 |
2 files changed, 14 insertions, 3 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. @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.6.7" #define RUBY_RELEASE_DATE "2021-02-28" -#define RUBY_PATCHLEVEL 159 +#define RUBY_PATCHLEVEL 160 #define RUBY_RELEASE_YEAR 2021 #define RUBY_RELEASE_MONTH 2 |