class UncaughtThrowError
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"
In Files
- vm_eval.c
Parent
ArgError
Public Class Methods
new(*args)
click to toggle source
Document-class: UncaughtThrowError
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"
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; }
Public Instance Methods
tag → obj
click to toggle source
Return the tag object which was called for.
static VALUE uncaught_throw_tag(VALUE exc) { return rb_ivar_get(exc, id_tag); }
to_s → string
click to toggle source
Returns formatted message with the inspected tag.
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 → obj
click to toggle source
Return the return value which was called for.
static VALUE uncaught_throw_value(VALUE exc) { return rb_ivar_get(exc, id_value); }