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
throw
is called with a tag which does not have correspondingcatch
block. -
#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, #detailed_message, #exception, exception, #full_message, #inspect, #message, #set_backtrace, to_tty?
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"
2419 2420 2421 2422 2423 2424 2425 2426 2427 |
# File 'vm_eval.c', line 2419
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.
2436 2437 2438 2439 2440 |
# File 'vm_eval.c', line 2436
static VALUE
uncaught_throw_tag(VALUE exc)
{
return rb_ivar_get(exc, id_tag);
}
|
#to_s ⇒ String
Returns formatted message with the inspected tag.
2462 2463 2464 2465 2466 2467 2468 |
# File 'vm_eval.c', line 2462
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.
2449 2450 2451 2452 2453 |
# File 'vm_eval.c', line 2449
static VALUE
uncaught_throw_value(VALUE exc)
{
return rb_ivar_get(exc, id_value);
}
|