Hi,
I am creating a web site using Ruby on Rails and Paypal NVP API. I see
in Paypal SDK something like:
def nameOfaMethod
…
rescue
…
end
and I just want to make sure if it is correct. Usually rescue clause is
in a begin … end block. Can def replace begin as begin has an end and
represents a block as well. Thanks!
On Fri, Nov 09, 2007 at 06:29:40PM +0900, Franck Yu wrote:
and I just want to make sure if it is correct. Usually rescue clause is
in a begin … end block. Can def replace begin as begin has an end and
represents a block as well. Thanks!
The body of a method definition can be considered as a begin/end block.
So the code is OK.
It makes sense but where is it documented? In the Ruby programming
language spec? Where can I find the info?
Thank you for your answer!
Franck
Damien M. wrote:
Hello,
On Fri, Nov 09, 2007 at 06:29:40PM +0900, Franck Yu wrote:
and I just want to make sure if it is correct. Usually rescue clause is
in a begin … end block. Can def replace begin as begin has an end and
represents a block as well. Thanks!
The body of a method definition can be considered as a begin/end block.
So the code is OK.
It makes sense but where is it documented? In the Ruby programming
language spec? Where can I find the info?
In pickaxe2, Chapter 22: The Ruby Language, section Method Definition,
p. 345, the listing for the general syntax of a method definition does
not indicate that a rescue block can be attached to a method. However,
on p. 347 the text says,
“The body of a method acts as if it were a begin/end block, in that it
may contain exception handling statements(rescue, else, and ensure).”
Also, in the same chapter, section Exceptions, p. 361, it says,
“A block or method may have multiple rescue clauses…When an exception
is raised, Ruby scans up the call stack until it finds an enclosing
begin/end block, method body, or statement with a rescue modifier.”
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.