我希望能够从调用方法中返回,同时仍在调用方法内。Ruby:从调用方法返回
例子:
def calling_method
# stuff
called_method
# more stuff
end
def called_method
# stuff
return_from_caller if foo # << I would like to return from calling_method
# more stuff
end
有没有一种简单的方法来实现这一目标?
的“脏”的办法,我用的那一刻是这样的:
def calling_method
# stuff
called_method and return
# more stuff
end
def called_method
# stuff
return false if foo
# more stuff
end
但是,这并不完全令人满意,因为我在调用的方法做了and return
。
Ruby,像其他语言一样,获取返回语句时结束该方法。您可以在内容中设置一个变量,并在此方法结束时返回。 – gFontaniva
我真的不明白你的评论。你能提供一个代码示例吗? – Mat
如果语义上有意义,您也可以引发异常。 – Felix