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

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top