Exception: UncaughtThrowError
- Inherits:
-
ArgumentError
- Object
- Exception
- StandardError
- ArgumentError
- UncaughtThrowError
- Defined in:
- vm_eval.c,
vm_eval.c
Overview
Raised when throw is called with a tag which does not have corresponding catch block.
throw "foo", "bar"
raises the exception:
UncaughtThrowError: uncaught throw "foo"
Instance Method Summary collapse
-
#initialize(*args) ⇒ Object
constructor
Raised when
throwis called with a tag which does not have correspondingcatchblock. -
#tag ⇒ Object
Return the tag object which was called for.
-
#to_s ⇒ String
Returns formatted message with the inspected tag.
-
#value ⇒ Object
Return the return value which was called for.
Methods inherited from Exception
#==, #backtrace, #backtrace_locations, #cause, #exception, exception, #inspect, #message, #set_backtrace
Constructor Details
#initialize(*args) ⇒ Object
Raised when throw is called with a tag which does not have corresponding catch block.
throw "foo", "bar"
raises the exception:
UncaughtThrowError: uncaught throw "foo"
1809 1810 1811 1812 1813 1814 1815 1816 1817 |
# File 'vm_eval.c', line 1809 static VALUE uncaught_throw_init(int argc, const VALUE *argv, VALUE exc) { rb_check_arity(argc, 2, UNLIMITED_ARGUMENTS); rb_call_super(argc - 2, argv + 2); rb_ivar_set(exc, id_tag, argv[0]); rb_ivar_set(exc, id_value, argv[1]); return exc; } |
Instance Method Details
#tag ⇒ Object
Return the tag object which was called for.
1826 1827 1828 1829 1830 |
# File 'vm_eval.c', line 1826 static VALUE uncaught_throw_tag(VALUE exc) { return rb_ivar_get(exc, id_tag); } |
#to_s ⇒ String
Returns formatted message with the inspected tag.
1852 1853 1854 1855 1856 1857 1858 |
# File 'vm_eval.c', line 1852 static VALUE uncaught_throw_to_s(VALUE exc) { VALUE mesg = rb_attr_get(exc, id_mesg); VALUE tag = uncaught_throw_tag(exc); return rb_str_format(1, &tag, mesg); } |
#value ⇒ Object
Return the return value which was called for.
1839 1840 1841 1842 1843 |
# File 'vm_eval.c', line 1839 static VALUE uncaught_throw_value(VALUE exc) { return rb_ivar_get(exc, id_value); } |