hey all
I want to pass the contents of an array to a method, to be interpreted
as a standard list of arguments. What's the simplest and nicest way of
doing this? (i can think of a few dirty hack ways but don't want to use
them)
eg
#have
arr = [arg1, arg2, arg3]
#want
a_method(arg1, arg2, arg3)
···
--
Posted via http://www.ruby-forum.com/.
Look for documentation, etc for the splat operator (there's plenty out there):
a_method (*arr)
Jesus.
···
On Mon, Feb 23, 2009 at 12:44 PM, Max Williams <toastkid.williams@gmail.com> wrote:
hey all
I want to pass the contents of an array to a method, to be interpreted
as a standard list of arguments. What's the simplest and nicest way of
doing this? (i can think of a few dirty hack ways but don't want to use
them)
eg
#have
arr = [arg1, arg2, arg3]
#want
a_method(arg1, arg2, arg3)
Max Williams wrote:
hey all
I want to pass the contents of an array to a method, to be interpreted
as a standard list of arguments. What's the simplest and nicest way of
doing this? (i can think of a few dirty hack ways but don't want to use
them)
eg
#have
arr = [arg1, arg2, arg3]
#want
a_method(arg1, arg2, arg3)
Look up the splat operator, a.k.a. unary unarray:
a_method(*arr)
···
--
RMagick: http://rmagick.rubyforge.org/
aha, that makes sense...
thanks a lot, everyone. I've used the splat before at the end of
parameter lists, eg
def a_method(a_thing, *args)
But i guess i didn't really properly understand what it does. I can't
find an explaanation in pickaxe, although it's not the simplest thing to
look for in the index (there's no listing for 'splat' and a lot of
listings for '*').
···
--
Posted via http://www.ruby-forum.com/.
Max Williams wrote:
But i guess i didn't really properly understand what it does. I can't
find an explaanation in pickaxe, although it's not the simplest thing to
look for in the index (there's no listing for 'splat' and a lot of
listings for '*').
http://www.ruby-doc.org/docs/ProgrammingRuby/
Click on the chapter "More about Methods"
Scroll down to the section headed "Expanding Arrays in Method Calls"
It could be indexed better 
···
--
Posted via http://www.ruby-forum.com/\.
Brian Candler wrote:
Max Williams wrote:
But i guess i didn't really properly understand what it does. I can't
find an explaanation in pickaxe, although it's not the simplest thing to
look for in the index (there's no listing for 'splat' and a lot of
listings for '*').
Programming Ruby: The Pragmatic Programmer's Guide
Click on the chapter "More about Methods"
Scroll down to the section headed "Expanding Arrays in Method Calls"
It could be indexed better 
Cool. I'm using the paper version, it's page 83 
Thanks a lot.
···
--
Posted via http://www.ruby-forum.com/\.