6
begin
# ...
rescue
# ...
end
werden Ausnahmen nicht fangen, die nicht Subklassen von StandardError
sind. In C,
rb_rescue(x, Qnil, y, Qnil);
VALUE x(void) { /* ... */ return Qnil; }
VALUE y(void) { /* ... */ return Qnil; }
wird das gleiche tun. Wie kann ich rescue Exception => e
von einer Ruby-C-Erweiterung (anstatt nur rescue => e
)?
+1 Genau die gleichen Hit Problem und diese Entdeckung löste mein Problem. –
Ich würde das abstimmen, aber mir ist nicht klar, was Callbacks was machen. Was wird im Falle einer Rettung gerufen? Was wird gerettet? –
Ich würde annehmen, 'b_proc' ist der Code nach der Anweisung' begin' und 'r_proc' ist der Rettungscode. – Vortico