Tengo un método como este:En un método que toma varios parámetros opcionales, ¿cómo se puede especificar alguno excepto el primero?
def foo(fruit='apple', cut="sliced", topping="ice cream")
# some logic here
end
¿Cómo puedo llamarlo donde sólo anular el parámetro de relleno pero el uso de los valores por defecto para los demás, algo como esto
foo('','','hot fudge')
Por supuesto, esto no funciona según lo previsto, pero solo deseo proporcionar un valor para el tercer parámetro opcional, y los dos primeros se quedan con sus valores predeterminados. Sé cómo hacer esto con un hash, pero ¿es una forma abreviada de hacerlo, usando la sintaxis anterior?
Y a partir de Ruby 2.1 hay soporte para 'argumentos de palabras clave obligatorios', ver [notas de la versión] (https://github.com/ruby/ruby/blob/ruby_2_1/NEWS#L16-17) – Epigene