mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 23:28:02 +00:00
Add Last Raised Exception In The Call Stack as a ruby til.
This commit is contained in:
@@ -118,6 +118,7 @@ smart people at [Hashrocket](http://hashrocket.com/).
|
|||||||
- [Evaluating One-Off Commands](ruby/evaluating-one-off-commands.md)
|
- [Evaluating One-Off Commands](ruby/evaluating-one-off-commands.md)
|
||||||
- [FactoryGirl Sequences](ruby/factory-girl-sequences.md)
|
- [FactoryGirl Sequences](ruby/factory-girl-sequences.md)
|
||||||
- [Finding The Source of Ruby Methods](ruby/finding-the-source-of-ruby-methods.md)
|
- [Finding The Source of Ruby Methods](ruby/finding-the-source-of-ruby-methods.md)
|
||||||
|
- [Last Raised Exception In The Call Stack](ruby/last-raised-exception-in-the-call-stack.md)
|
||||||
- [Limit Split](ruby/limit-split.md)
|
- [Limit Split](ruby/limit-split.md)
|
||||||
- [Listing Local Variables](ruby/listing-local-variables.md)
|
- [Listing Local Variables](ruby/listing-local-variables.md)
|
||||||
- [Next And Previous Floats](ruby/next-and-previous-floats.md)
|
- [Next And Previous Floats](ruby/next-and-previous-floats.md)
|
||||||
|
|||||||
18
ruby/last-raised-exception-in-the-call-stack.md
Normal file
18
ruby/last-raised-exception-in-the-call-stack.md
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# Last Raised Exception In The Call Stack
|
||||||
|
|
||||||
|
In Ruby, the `$!` global variable contains the last exception that was
|
||||||
|
raised in the current call stack. This makes it trivial to check what error
|
||||||
|
is being rescued even if it hasn't been captured in a local variable.
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
class MyError < StandardError; end
|
||||||
|
|
||||||
|
def do_stuff
|
||||||
|
raise MyError
|
||||||
|
rescue
|
||||||
|
puts "rescuing #{$!}"
|
||||||
|
end
|
||||||
|
|
||||||
|
do_stuff
|
||||||
|
#=> rescuing MyError
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user