ฉันมีรหัสบางอย่างที่ต้องการช่วยเหลือข้อยกเว้นหลายประเภทในทับทิม:
begin
a = rand
if a > 0.5
raise FooException
else
raise BarException
end
rescue FooException, BarException
puts "rescued!"
end
สิ่งที่ฉันต้องการทำคือเก็บรายการประเภทข้อยกเว้นที่ฉันต้องการช่วยเหลือที่ไหนสักแห่งและส่งต่อประเภทเหล่านั้นไปยังส่วนช่วยเหลือ:
EXCEPTIONS = [FooException, BarException]
แล้ว:
rescue EXCEPTIONS
นี้เป็นไปได้และมันเป็นไปได้โดยไม่ต้องโทรจริงๆสับ-Y บางอย่างeval
? ฉันไม่หวังว่าจะได้เห็นTypeError: class or module required for rescue clause
เมื่อฉันพยายามข้างต้น