如果条件符合,我有一个名为graph
的类,它已经引发了不同的ArgumentError
。我需要实现我自己的类,使用graph
作为类对象。我的特定方法的返回值取决于graph
内部方法引发的错误消息。例如:
如果graph
有一个名为graphMethod
的方法:
def graphMethod(value)
raise ArgumentError, "bad value, need handling" if value == 0
raise ArgumentError, "bad value, but don't need handling" if value == 1
#do stuff
end
我的班级有一个名为myMethod
的方法:
def myMethod
graph = graph.new
begin
#notice I'm calling graphMethod multiple times
graph.graphMethod(1)
graph.graphMethod(0)
graph.graphMethod(1)
rescue ArgumentError => e
#I only want to handle the case when 0 is passed in
return false if e.message == "bad value, need handling"
end
return true #true when graphMethod raises an ArgumentError, but the value passed into graphMethod is 1
end
如果只处理具有相同错误类型的某些错误消息,我如何解释graph
引发的错误消息?
到目前为止,我已尝试在value
内检查myMethod
,但未使用graphMethod
引发的错误消息,但这是多余的,并且在我的实际graph
中所以检查的案例比这复杂得多。我想有一种可以做到的方法是每次调用begin...rescue
时使用graphMethod
,但我确信有更好的方法。