Вы не можете использовать этот синтаксис, чтобы сделать это в ruby. Я бы порекомендовал синтаксис хеша для этого.
def foo(args={})
args[:fruit] ||= 'apple'
args[:cut] ||= 'sliced'
args[:topping] ||= 'ice cream'
# some logic here
end
foo(:topping => 'hot fudge')
Вы также можете сделать это, используя позиционные аргументы:
def foo(fruit=nil,cut=nil,topping=nil)
fruit ||= 'apple'
cut ||= 'sliced'
topping ||= 'ice cream'
# some logic here
end
foo(nil,nil,'hot fudge')
Помните, что оба эти метода не позволяют передавать действительные nil
аргументы в функции
(когда вы можете захотеть иногда)