class ExchangeUtil def exchange_to(other_currency, date = Date.current, &) @bank.exchange_with_on(self, other_currency, date, &) end end¿Cuál es el significado de & en la definición de métodos y llamadas a métodos?
Es una nueva característica en Ruby 3.1: Argumento de bloque anónimo
Es solo un atajo para cuando tiene un argumento de bloque para una función cuyo único propósito es pasar a otra función. La sintaxis anterior para eso habría sido
class ExchangeUtil def exchange_to(other_currency, date = Date.current, &block) @bank.exchange_with_on(self, other_currency, date, &block) end end El parámetro &block podría haber tenido cualquier nombre, como &my_block , pero el nombre generalmente no tenía sentido, por lo que lo hicieron "anónimo".