Il y a des moments où vous souhaitez ajouter des informations de suivi ou une cause à une exception instanciée à la volée. Dans ce cas.
begin
1/0
rescue => e
err = raise RuntimeError.new, 'Levons n'importe quelle erreur!' rescue $!
p err
p err.cause
end
# => #<RuntimeError:Levons n'importe quelle erreur!>
# => #<ZeroDivisionError: divided by 0>
Je pense que c'est le plus rapide
Recommended Posts