Tecla / valor condicional en un ruby hash

¿Existe una buena manera (una línea) de escribir un hash en ruby con alguna entrada solo allí si se cumple una condición? Pensé e

{:a => 'a', :b => ('b' if condition)}

Pero eso deja:b == nil si no se cumple la condición. Me doy cuenta de que esto podría hacerse fácilmente en dos líneas más o menos, pero sería mucho mejor en una línea (por ejemplo, al pasar el hash a una función).

¿Me estoy perdiendo (aún) otra de las increíbles características de Ruby aquí? ;)

Respuestas a la pregunta(12)

Su respuesta a la pregunta