Exception: SystemExit
Overview
Raised by exit to initiate the termination of the script.
Instance Method Summary (collapse)
-
- (Object) new(status = 0)
constructor
Create a new SystemExit exception with the given status.
-
- (Fixnum) status
Return the status value associated with this system exit.
-
- (Boolean) success?
Returns true if exiting successful, false if not.
Methods inherited from Exception
#==, #backtrace, exception, #exception, #inspect, #message, #set_backtrace, #to_s
Constructor Details
- (Object) new(status = 0)
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
- (Fixnum) status
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"));
}
|
- (Boolean) success?
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;
}
|