Estoy usando Ruby on Rails 3 y me gustaría saber qué significa la presencia de un operador *
cerca de un argumento de función y comprender sus usos en otros escenarios.¿Qué hace el símbolo * (asterisco) cerca de un argumento de función y cómo usar eso en otros escenarios?
Ejemplo escenario (este método era desde el rubí en los carriles 3 marco):
def find(*args)
return to_a.find { |*block_args| yield(*block_args) } if block_given?
options = args.extract_options!
if options.present?
apply_finder_options(options).find(*args)
else
case args.first
when :first, :last, :all
send(args.first)
else
find_with_ids(*args)
end
end
end