D
Daniel Finnie
In Java, you could write the following code:
public void foo(int x)
{ /* do something*/ }
public void foo(String x)
{ /* do something*/ }
int x1
String x2
foo(x1)
foo(x2)
The 2nd to last line would call the first foo and the last line would
call the 2nd foo.
Is there a way to do this in Ruby? I am aware of method(*args) and
case...when but I think Java's version is cleaner and more readable. I
also know that variables in Ruby are dynamically typed, the method that
is called should be based on the most recent type of the variable being
passed.
I don't want to do this:
def foo(arg)
if arg.type_of? String
# do something
elsif arg.type_of? Numeric
#do something
else
raise args error
end
end
thanks,
Dan
public void foo(int x)
{ /* do something*/ }
public void foo(String x)
{ /* do something*/ }
int x1
String x2
foo(x1)
foo(x2)
The 2nd to last line would call the first foo and the last line would
call the 2nd foo.
Is there a way to do this in Ruby? I am aware of method(*args) and
case...when but I think Java's version is cleaner and more readable. I
also know that variables in Ruby are dynamically typed, the method that
is called should be based on the most recent type of the variable being
passed.
I don't want to do this:
def foo(arg)
if arg.type_of? String
# do something
elsif arg.type_of? Numeric
#do something
else
raise args error
end
end
thanks,
Dan