Digamos que quiero que se ejecute una llamada, y si falla, no es gran cosa; el programa puede continuar sin problemas. (Sé que esto es generalmente una mala práctica, pero imagino una rápida secuencia de comandos hipotética, de una sola vez, y no un gran proyecto)Tener un bloque/comando de Ruby falla silenciosamente sin un bloque de 'rescate' en blanco
La forma en que me han enseñado a hacer esto fue:
begin
thing_to_try
rescue
# awkward blank rescue block
end
next_thing
Por supuesto, hay otras formas de hacerlo, incluido el uso de ensure
y cosas por el estilo. Pero, ¿hay alguna manera de conseguir que un método call/block falle silenciosamente sin un bloque en blanco desordenado?
Por curiosidad, ¿su uso de muestra también actúa como un comienzo/rescate? –
@Justin L .: No estoy seguro de si esto responde a su pregunta, pero no hay 'comenzar' porque estoy rescatando la llamada al método completo de' squelch'. Para decirlo de otra manera, la palabra clave 'def' es un' begin' implícito. – wuputah
Quiero decir, tu 'squelch {foo} || squelch {bar} '; ¿actúa de la misma manera que 'begin foo; barra de rescate; fin'? –