In Files

  • vm_eval.c

Parent

ArgError

Class/Module Index [+]

Quicksearch
No matching classes.

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"

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);
}
 

AltStyle によって変換されたページ (->オリジナル) /