Exception: SystemExit
Overview
Raised by exit
to initiate the termination of the script.
Instance Method Summary collapse
-
#new(status = 0) ⇒ Object
constructor
Create a new
SystemExit
exception with the given status. -
#status ⇒ Fixnum
Return the status value associated with this system exit.
-
#success? ⇒ Boolean
Returns
true
if exiting successful,false
if not.
Methods inherited from Exception
#==, #backtrace, #exception, exception, #inspect, #message, #set_backtrace, #to_s
Constructor Details
#new(status = 0) ⇒ Object
Create a new SystemExit
exception with the given status.
|
# File 'error.c'
static VALUE
exit_initialize(int argc, VALUE *argv, VALUE exc)
{
VALUE status = INT2FIX(EXIT_SUCCESS);
if (argc > 0 && FIXNUM_P(argv[0])) {
status = *argv++;
--argc;
}
|
Instance Method Details
#status ⇒ Fixnum
Return the status value associated with this system exit.
|
# File 'error.c'
static VALUE
exit_status(VALUE exc)
{
return rb_attr_get(exc, rb_intern("status"));
}
|
#success? ⇒ Boolean
Returns true
if exiting successful, false
if not.
|
# File 'error.c'
static VALUE
exit_success_p(VALUE exc)
{
VALUE status_val = rb_attr_get(exc, rb_intern("status"));
int status;
if (NIL_P(status_val))
return Qtrue;
status = NUM2INT(status_val);
if (WIFEXITED(status) && WEXITSTATUS(status) == EXIT_SUCCESS)
return Qtrue;
return Qfalse;
}
|