Extract array values when using Object.send?

W

warhero

How can I take an array, extract each top level value when using
Object.send on an object?.. See the example below..

class TestSend
def test( arg1, arg2, arg3)
puts arg1
puts arg2
puts arg3
end
end

t = TestSend.new
t.send('test', 'hey', 1, 'rrr');

args = ['hey',1,'rrr']
t.send('test', args); #this outputs an argument error, 3 for 1.

Thanks
 
C

Chris Carter

How can I take an array, extract each top level value when using
Object.send on an object?.. See the example below..

class TestSend
def test( arg1, arg2, arg3)
puts arg1
puts arg2
puts arg3
end
end

t = TestSend.new
t.send('test', 'hey', 1, 'rrr');

args = ['hey',1,'rrr']
t.send('test', args); #this outputs an argument error, 3 for 1.

Thanks

Use the splat op:

t.send('test', *args)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,262
Messages
2,571,058
Members
48,769
Latest member
Clifft

Latest Threads

Top