ruby convert array into function arguments

arguments, arrays, function, ruby

Solution

You can turn an `Array` into an argument list with the `*` (or "splat") operator:

a = [0, 1, 2, 3, 4] # => [0, 1, 2, 3, 4]
b = [2, 3] # => [2, 3]
a.slice(*b) # => [2, 3, 4]

Reference:

- Array to Arguments Conversion

Problem

Say I have an array. I wish to pass the array to a function. The function, however, expects two arguments. Is there a way to on the fly convert the array into 2 arguments? For example: ``` a = [0,1,2,3,4] b = [2,3] a.slice(b) ``` Would yield an error in Ruby. I need to input `a.slice(b[0],b[1])` I am looking for something more elegant, as in `a.slice(foo.bar(b))` Thanks.

Original source

Related problems