[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

how to pass unkown length of parameters into a class method

Peter Loftus

12/18/2007 12:17:00 PM

#!/usr/bin/ruby
class Example
def Examplemethod(var1)
puts var1
end
end

Check = Example.new
Check.Examplemethod("Loftz")

Hey guys

So this is just calling a method that prints out a name. Im just
wondering can i specify that there may be mulitple parameters going into
this method

for example
Check.Example("Loftz","peter","john","paul","gary")

and have that method inside the class Example not know how many
parameters are going to be passed into it?

def Examplemethod(?)

Regards
Loftz
--
Posted via http://www.ruby-....

2 Answers

Jason Roelofs

12/18/2007 12:34:00 PM

0

[Note: parts of this message were removed to make it a legal post.]

def Example(*args)
args.each do |arg|
# Process individual argument
end
end

Jason

On Dec 18, 2007 7:16 AM, Peter Loftus <loftuz@gmail.com> wrote:

> #!/usr/bin/ruby
> class Example
> def Examplemethod(var1)
> puts var1
> end
> end
>
> Check = Example.new
> Check.Examplemethod("Loftz")
>
> Hey guys
>
> So this is just calling a method that prints out a name. Im just
> wondering can i specify that there may be mulitple parameters going into
> this method
>
> for example
> Check.Example("Loftz","peter","john","paul","gary")
>
> and have that method inside the class Example not know how many
> parameters are going to be passed into it?
>
> def Examplemethod(?)
>
> Regards
> Loftz
> --
> Posted via http://www.ruby-....
>
>

Dan Yoder

12/18/2007 6:06:00 PM

0

Just to elaborate a little on Jason's point, for those who are
interested in what this code is doing, it is based on Ruby's extremely
cool array assignment feature. This is explained here:

http://phrogz.net/ProgrammingRuby/tut_expressions.html#parallel...

and applies to parameter assignment in method invocations as well, as
Jason pointed out:

http://phrogz.net/ProgrammingRuby/tut_methods.html#variablelengtharg...

That is to say, that variable argument lists in Ruby is actually using
nested assignment, which you can use anywhere, not just in method
definitions.

Best of luck,
-Dan
---
http://dev.ze...



On Dec 18, 4:33 am, Jason Roelofs <jameskil...@gmail.com> wrote:
> [Note: parts of this message were removed to make it a legal post.]
>
> def Example(*args)
> args.each do |arg|
> # Process individual argument
> end
> end
>
> Jason
>
> On Dec 18, 2007 7:16 AM, Peter Loftus <lof...@gmail.com> wrote:
>
> > #!/usr/bin/ruby
> > class Example
> > def Examplemethod(var1)
> > puts var1
> > end
> > end
>
> > Check = Example.new
> > Check.Examplemethod("Loftz")
>
> > Hey guys
>
> > So this is just calling a method that prints out a name. Im just
> > wondering can i specify that there may be mulitple parameters going into
> > this method
>
> > for example
> > Check.Example("Loftz","peter","john","paul","gary")
>
> > and have that method inside the class Example not know how many
> > parameters are going to be passed into it?
>
> > def Examplemethod(?)
>
> > Regards
> > Loftz
> > --
> > Posted viahttp://www.ruby-....