Ruby 2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)

Data Structures | Macros | Enumerations | Functions | Variables
Exception handlings

## Data Structures
struct | bug_reporters

## Macros
#define | EXIT_SUCCESS 0
#define | WIFEXITED(status) 1
#define | WEXITSTATUS(status) (status)
#define | with_warning_string(mesg, enc, fmt)
#define | MAX_BUG_REPORTERS 0x100
#define | REPORT_BUG_BUFSIZ 256
#define | bug_report_begin(out, fmt)
#define | report_bug(file, line, fmt, ctx)
#define | report_bug_valist(file, line, fmt, ctx, args)
#define | write_or_abort(fd, str, len) (write((fd), (str), (len)) < 0 ? abort() : (void)0)
#define | WRITE_CONST(fd, str) write_or_abort((fd),(str),sizeof(str) - 1)
#define | UNDEF_LEAKED "undef leaked to the Ruby space"
#define | id_cause ruby_static_id_cause
#define | id_bt idBt
#define | id_bt_locations idBt_locations
#define | id_mesg idMesg
#define | id_name idName
#define | frozen_err_receiver name_err_receiver
#define | name_err_mesg_free RUBY_TYPED_DEFAULT_FREE

## Enumerations
enum | { NAME_ERR_MESG__MESG, NAME_ERR_MESG__RECV, NAME_ERR_MESG__NAME, NAME_ERR_MESG_COUNT }

## Functions
VALUE | rb_iseqw_local_variables (VALUE iseqval)
VALUE | rb_iseqw_new (const rb_iseq_t *)
int | rb_str_end_with_asciichar (VALUE str, int c)
VALUE | rb_syntax_error_append (VALUE exc, VALUE file, int line, int column, rb_encoding *enc, const char *fmt, va_list args)
rb_warning_category_t | rb_warning_category_from_name (VALUE category)
void | rb_warning_category_update (unsigned int mask, unsigned int bits)
MJIT_FUNC_EXPORTED bool | rb_warning_category_enabled_p (rb_warning_category_t category)
void | rb_compile_warn (const char *file, int line, const char *fmt,...)
void | rb_compile_warning (const char *file, int line, const char *fmt,...)
void | rb_warn (const char *fmt,...)
void | rb_enc_warn (rb_encoding *enc, const char *fmt,...)
void | rb_warning (const char *fmt,...)
VALUE | rb_warning_string (const char *fmt,...)
void | rb_warn_deprecated (const char *fmt, const char *suggest,...)
VALUE | rb_ec_backtrace_location_ary (rb_execution_context_t *ec, long lev, long n)
int | rb_bug_reporter_add (void(*func)(FILE *, void *), void *data)
| FUNC_MINIMIZED (static void bug_important_message(FILE *out, const char *const msg, size_t len))
| NORETURN (static void die(void))
void | rb_bug (const char *fmt,...)
void | rb_bug_for_fatal_signal (ruby_sighandler_t default_sighandler, int sig, const void *ctx, const char *fmt,...)
void | rb_bug_errno (const char *mesg, int errno_arg)
void | rb_async_bug_errno (const char *mesg, int errno_arg)
void | rb_report_bug_valist (VALUE file, int line, const char *fmt, va_list args)
MJIT_FUNC_EXPORTED void | rb_assert_failure (const char *file, int line, const char *name, const char *expr)
const char * | rb_builtin_type_name (int t)
const char * | rb_builtin_class_name (VALUE x)
| NORETURN (static void unexpected_type(VALUE, int, int))
void | rb_check_type (VALUE x, int t)
void | rb_unexpected_type (VALUE x, int t)
int | rb_typeddata_inherited_p (const rb_data_type_t *child, const rb_data_type_t *parent)
int | rb_typeddata_is_kind_of (VALUE obj, const rb_data_type_t *data_type)
int | rb_typeddata_is_instance_of (VALUE obj, const rb_data_type_t *data_type)
void * | rb_check_typeddata (VALUE obj, const rb_data_type_t *data_type)
VALUE | rb_exc_new (VALUE etype, const char *ptr, long len)
VALUE | rb_exc_new_cstr (VALUE etype, const char *s)
VALUE | rb_exc_new_str (VALUE etype, VALUE str)
void | rb_error_write (VALUE errinfo, VALUE emesg, VALUE errat, VALUE str, VALUE highlight, VALUE reverse)
VALUE | rb_get_message (VALUE exc)
VALUE | rb_get_backtrace (VALUE exc)
MJIT_FUNC_EXPORTED VALUE | rb_exc_set_backtrace (VALUE exc, VALUE bt)
void | rb_name_error (ID id, const char *fmt,...)
void | rb_name_error_str (VALUE str, const char *fmt,...)
VALUE | rb_name_err_new (VALUE mesg, VALUE recv, VALUE method)
VALUE | rb_nomethod_err_new (VALUE mesg, VALUE recv, VALUE method, VALUE args, int priv)
void | rb_invalid_str (const char *str, const char *type)
VALUE | rb_key_err_new (VALUE mesg, VALUE recv, VALUE key)
void | Init_Exception (void)
void | rb_enc_raise (rb_encoding *enc, VALUE exc, const char *fmt,...)
void | rb_vraise (VALUE exc, const char *fmt, va_list ap)
void | rb_raise (VALUE exc, const char *fmt,...)
| NORETURN (static void raise_loaderror(VALUE path, VALUE mesg))
void | rb_loaderror (const char *fmt,...)
void | rb_loaderror_with_path (VALUE path, const char *fmt,...)
void | rb_notimplement (void)
void | rb_fatal (const char *fmt,...)
VALUE | rb_syserr_new (int n, const char *mesg)
VALUE | rb_syserr_new_str (int n, VALUE arg)
void | rb_syserr_fail (int e, const char *mesg)
void | rb_syserr_fail_str (int e, VALUE mesg)
void | rb_sys_fail (const char *mesg)
void | rb_sys_fail_str (VALUE mesg)
void | rb_mod_sys_fail (VALUE mod, const char *mesg)
void | rb_mod_sys_fail_str (VALUE mod, VALUE mesg)
void | rb_mod_syserr_fail (VALUE mod, int e, const char *mesg)
void | rb_mod_syserr_fail_str (VALUE mod, int e, VALUE mesg)
void | rb_sys_warning (const char *fmt,...)
void | rb_sys_enc_warning (rb_encoding *enc, const char *fmt,...)
void | rb_syserr_enc_warning (int err, rb_encoding *enc, const char *fmt,...)
void | rb_load_fail (VALUE path, const char *err)
void | rb_error_frozen (const char *what)
void | rb_frozen_error_raise (VALUE frozen_obj, const char *fmt,...)
void | rb_error_frozen_object (VALUE frozen_obj)
void | rb_check_frozen (VALUE obj)
void | rb_error_untrusted (VALUE obj)
void | rb_check_trusted (VALUE obj)
void | rb_check_copyable (VALUE obj, VALUE orig)
void | Init_syserr (void)
void | Init_warning (void)
void | rb_exc_raise (VALUE mesg)
| Raises an exception in the current thread. More...
void | rb_exc_fatal (VALUE mesg)
| Raises a fatal error in the current thread. More...
void | rb_interrupt (void)
| Raises an `Interrupt` exception. More...
VALUE | rb_make_exception (int argc, const VALUE *argv)
| Make an `Exception` object from the list of arguments in a manner similar to `Kernel#raise`. More...
void | rb_jump_tag (int tag)
| Continues the exception caught by rb_protect() and rb_eval_string_protect(). More...
VALUE | rb_rescue2 (VALUE(*b_proc)(VALUE), VALUE data1, VALUE(*r_proc)(VALUE, VALUE), VALUE data2,...)
| An equivalent of `rescue` clause. More...
VALUE | rb_rescue (VALUE(*b_proc)(VALUE), VALUE data1, VALUE(*r_proc)(VALUE, VALUE), VALUE data2)
| An equivalent of `rescue` clause. More...
VALUE | rb_protect (VALUE(*proc)(VALUE), VALUE data, int *pstate)
| Protects a function call from potential global escapes from the function. More...
VALUE | rb_ensure (VALUE(*b_proc)(VALUE), VALUE data1, VALUE(*e_proc)(VALUE), VALUE data2)
| An equivalent to `ensure` clause. More...
VALUE | rb_errinfo (void)
| The current exception in the current thread. More...
void | rb_set_errinfo (VALUE err)
| Sets the current exception (`$!`) to the given value. More...

## Variables
VALUE | rb_eEAGAIN
VALUE | rb_eEWOULDBLOCK
VALUE | rb_eEINPROGRESS
const char | ruby_description []
VALUE | rb_eException
VALUE | rb_eSystemExit
VALUE | rb_eInterrupt
VALUE | rb_eSignal
VALUE | rb_eFatal
VALUE | rb_eStandardError
VALUE | rb_eRuntimeError
VALUE | rb_eFrozenError
VALUE | rb_eTypeError
VALUE | rb_eArgError
VALUE | rb_eIndexError
VALUE | rb_eKeyError
VALUE | rb_eRangeError
VALUE | rb_eNameError
VALUE | rb_eEncodingError
VALUE | rb_eEncCompatError
VALUE | rb_eNoMethodError
VALUE | rb_eSecurityError
VALUE | rb_eNotImpError
VALUE | rb_eNoMemError
VALUE | rb_cNameErrorMesg
VALUE | rb_eNoMatchingPatternError
VALUE | rb_eScriptError
VALUE | rb_eSyntaxError
VALUE | rb_eLoadError
VALUE | rb_eSystemCallError
VALUE | rb_mErrno
ID | ruby_static_id_cause

## Detailed Description

## Macro Definition Documentation

## ◆ bug_report_begin

#define bug_report_begin | ( |  | out,
|  |  | fmt
| ) |  |

Value:
do { \
va_list args; \
va_start(args, fmt); \
bug_report_begin_valist(out, fmt, args); \
va_end(args); \
} while (0)

Definition at line 583 of file error.c.

## ◆ EXIT_SUCCESS

#define EXIT_SUCCESS 0

Definition at line 39 of file error.c.

## ◆ frozen_err_receiver

#define frozen_err_receiver name_err_receiver

Definition at line 1510 of file error.c.

## ◆ id_bt

#define id_bt idBt

Definition at line 951 of file error.c.

## ◆ id_bt_locations

#define id_bt_locations idBt_locations

Definition at line 952 of file error.c.

## ◆ id_cause

#define id_cause ruby_static_id_cause

Definition at line 946 of file error.c.

## ◆ id_mesg

#define id_mesg idMesg

Definition at line 953 of file error.c.

## ◆ id_name

#define id_name idName

Definition at line 954 of file error.c.

## ◆ MAX_BUG_REPORTERS

#define MAX_BUG_REPORTERS 0x100

Definition at line 445 of file error.c.

## ◆ name_err_mesg_free

#define name_err_mesg_free RUBY_TYPED_DEFAULT_FREE

Definition at line 1695 of file error.c.

## ◆ report_bug

#define report_bug | ( |  | file,
|  |  | line,
|  |  | fmt,
|  |  | ctx
| ) |  |

Value:
do { \
FILE *out = bug_report_file(file, line); \
if (out) { \
bug_report_begin(out, fmt); \
rb_vm_bugreport(ctx); \
bug_report_end(out); \
} \
} while (0) \

Definition at line 604 of file error.c.

## ◆ REPORT_BUG_BUFSIZ

#define REPORT_BUG_BUFSIZ 256

Definition at line 469 of file error.c.

## ◆ report_bug_valist

#define report_bug_valist | ( |  | file,
|  |  | line,
|  |  | fmt,
|  |  | ctx,
|  |  | args
| ) |  |

Value:
do { \
FILE *out = bug_report_file(file, line); \
if (out) { \
bug_report_begin_valist(out, fmt, args); \
rb_vm_bugreport(ctx); \
bug_report_end(out); \
} \
} while (0) \

Definition at line 613 of file error.c.

## ◆ UNDEF_LEAKED

#define UNDEF_LEAKED "undef leaked to the Ruby space"

Definition at line 808 of file error.c.

## ◆ WEXITSTATUS

#define WEXITSTATUS | ( |  | status | ) | (status)

Definition at line 47 of file error.c.

## ◆ WIFEXITED

#define WIFEXITED | ( |  | status | ) | 1

Definition at line 43 of file error.c.

## ◆ with_warning_string

#define with_warning_string | ( |  | mesg,
|  |  | enc,
|  |  | fmt
| ) |  |

Value:
VALUE mesg; \
va_list args; va_start(args, fmt); \
mesg = warning_string(enc, fmt, args); \
va_end(args);

Definition at line 306 of file error.c.

## ◆ WRITE_CONST

#define WRITE_CONST | ( |  | fd,
|  |  | str
| ) |  | write_or_abort((fd),(str),sizeof(str) - 1)

Definition at line 685 of file error.c.

## ◆ write_or_abort

#define write_or_abort | ( |  | fd,
|  |  | str,
|  |  | len
| ) |  | (write((fd), (str), (len)) < 0 ? abort() : (void)0)

Definition at line 684 of file error.c.

## Enumeration Type Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
NAME_ERR_MESG__MESG |
NAME_ERR_MESG__RECV |
NAME_ERR_MESG__NAME |
NAME_ERR_MESG_COUNT |

Definition at line 1681 of file error.c.

## Function Documentation

## ◆ FUNC_MINIMIZED()

FUNC_MINIMIZED | ( | static void | bug_important_messageFILE *out, const char *const msg, size_t len | ) |

## ◆ Init_Exception()

void Init_Exception | ( | void |  | ) |

Definition at line 2542 of file error.c.

References rb_class_new_instance(), rb_cObject, rb_define_class(), rb_define_singleton_method(), and rb_eException.

## ◆ Init_syserr()

void Init_syserr | ( | void |  | ) |

Definition at line 3055 of file error.c.

## ◆ Init_warning()

void Init_warning | ( | void |  | ) |

Definition at line 3068 of file error.c.

## ◆ NORETURN() [1/3]

NORETURN | ( | static void | dievoid | ) |

## ◆ NORETURN() [2/3]

NORETURN | ( | static void | raise_loaderrorVALUE path, VALUE mesg | ) |

## ◆ NORETURN() [3/3]

NORETURN | ( | static void | unexpected_typeVALUE, int, int | ) |

## ◆ rb_assert_failure()

MJIT_FUNC_EXPORTED void rb_assert_failure | ( | const char * | file,
|  | int | line,
|  | const char * | name,
|  | const char * | expr
| ) |  |

Definition at line 716 of file error.c.

References fprintf(), name, ruby_description, and stderr.

## ◆ rb_async_bug_errno()

void rb_async_bug_errno | ( | const char * | mesg,
|  | int | errno_arg
| ) |  |

Definition at line 688 of file error.c.

References strlen(), WRITE_CONST, and write_or_abort.

## ◆ rb_bug()

void rb_bug | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 634 of file error.c.

References fmt, GET_EC, NULL, rb_source_location_cstr(), and report_bug.

Referenced by rb_bug_errno(), rb_check_type(), rb_econv_open_opts(), rb_fix2str(), rb_gc_writebarrier(), rb_maygvl_fd_fix_cloexec(), rb_method_type_name(), rb_obj_freeze(), rb_objspace_free(), rb_thread_call_with_gvl(), rb_thread_terminate_all(), rb_threadptr_root_fiber_setup(), rb_tracearg_eval_script(), rb_tracearg_instruction_sequence(), rb_tracearg_object(), rb_tracearg_raised_exception(), rb_tracearg_return_value(), rb_unexpected_type(), rsock_detect_cloexec(), and ruby_node_name().

## ◆ rb_bug_errno()

void rb_bug_errno | ( | const char * | mesg,
|  | int | errno_arg
| ) |  |

Definition at line 667 of file error.c.

References rb_bug().

## ◆ rb_bug_for_fatal_signal()

void rb_bug_for_fatal_signal | ( | ruby_sighandler_t | default_sighandler,
|  | int | sig,
|  | const void * | ctx,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 649 of file error.c.

References fmt, GET_EC, NULL, rb_source_location_cstr(), report_bug, and sig.

## ◆ rb_bug_reporter_add()

int rb_bug_reporter_add | ( | void(*)(FILE *, void *) | func,
|  | void * | data
| ) |  |

Definition at line 455 of file error.c.

## ◆ rb_builtin_class_name()

const char* rb_builtin_class_name | ( | VALUE | x | ) |

Definition at line 797 of file error.c.

## ◆ rb_builtin_type_name()

const char* rb_builtin_type_name | ( | int | t | ) |

Definition at line 761 of file error.c.

References name, and numberof.

## ◆ rb_check_copyable()

void rb_check_copyable | ( | VALUE | obj,
|  | VALUE | orig
| ) |  |

Definition at line 3047 of file error.c.

References FL_ABLE, obj, and rb_check_frozen_internal.

## ◆ rb_check_frozen()

void rb_check_frozen | ( | VALUE | obj | ) |

Definition at line 3028 of file error.c.

References obj, and rb_check_frozen_internal.

## ◆ rb_check_trusted()

void rb_check_trusted | ( | VALUE | obj | ) |

Definition at line 3041 of file error.c.

References rb_warning().

## ◆ rb_check_type()

void rb_check_type | ( | VALUE | x,
|  | int | t
| ) |  |

Definition at line 837 of file error.c.

References Qundef, rb_bug(), RTYPEDDATA_P, T_DATA, TYPE, and UNDEF_LEAKED.

## ◆ rb_check_typeddata()

void* rb_check_typeddata | ( | VALUE | obj,
|  | const rb_data_type_t * | data_type
| ) |  |

Definition at line 889 of file error.c.

References obj, RB_TYPE_P, and T_DATA.

## ◆ rb_compile_warn()

void rb_compile_warn | ( | const char * | file,
|  | int | line,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 270 of file error.c.

References fmt, NIL_P, ruby_verbose, str, and va_start.

## ◆ rb_compile_warning()

void rb_compile_warning | ( | const char * | file,
|  | int | line,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 285 of file error.c.

References fmt, RTEST, ruby_verbose, str, and va_start.

## ◆ rb_ec_backtrace_location_ary()

VALUE rb_ec_backtrace_location_ary | ( | rb_execution_context_t * | ec,
|  | long | lev,
|  | long | n
| ) |  |

## ◆ rb_enc_raise()

void rb_enc_raise | ( | rb_encoding * | enc,
|  | VALUE | exc,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2650 of file error.c.

References exc, fmt, rb_enc_vsprintf(), rb_exc_new3, rb_exc_raise(), va_end, and va_start.

## ◆ rb_enc_warn()

void rb_enc_warn | ( | rb_encoding * | enc,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 323 of file error.c.

References fmt, NIL_P, ruby_verbose, and with_warning_string.

## ◆ rb_ensure()

VALUE rb_ensure | ( | VALUE(*)(VALUE) | b_proc,
|  | VALUE | data1,
|  | VALUE(*)(VALUE) | e_proc,
|  | VALUE | data2
| ) |  |

An equivalent to `ensure` clause.

Equivalent to `begin .. ensure .. end`.

Calls the function b_proc with data1 as the argument, then calls e_proc with data2 when execution terminated.

Returns
  The return value of b_proc if no exception occurred, or `Qnil` if otherwise.

See also
  rb_rescue
  rb_rescue2
  rb_protect

Definition at line 1114 of file eval.c.

Referenced by rb_gvar_set(), rb_mutex_sleep(), rb_mutex_synchronize(), rb_str_locktmp_ensure(), rsock_init_inetsock(), and rsock_make_hostent().

## ◆ rb_errinfo()

VALUE rb_errinfo | ( | void |  | ) |

The current exception in the current thread.

Same as `$!` in Ruby.

Returns
  the current exception or `Qnil`

Definition at line 1881 of file eval.c.

References GET_EC.

## ◆ rb_error_frozen()

void rb_error_frozen | ( | const char * | what | ) |

Definition at line 2974 of file error.c.

References rb_eFrozenError, and rb_raise().

## ◆ rb_error_frozen_object()

void rb_error_frozen_object | ( | VALUE | frozen_obj | ) |

Definition at line 3006 of file error.c.

References CLASS_OF, exc, id_debug_created_info, PRIsVALUE, rb_eFrozenError, rb_exc_new_str(), rb_ivar_set(), and rb_sprintf().

## ◆ rb_error_untrusted()

void rb_error_untrusted | ( | VALUE | obj | ) |

Definition at line 3034 of file error.c.

References rb_warning().

## ◆ rb_error_write()

void rb_error_write | ( | VALUE | errinfo,
|  | VALUE | emesg,
|  | VALUE | errat,
|  | VALUE | str,
|  | VALUE | highlight,
|  | VALUE | reverse
| ) |  |

Definition at line 300 of file eval_error.c.

References CLASS_OF, NIL_P, Qnil, Qundef, rb_stderr_tty_p(), and rb_strlen_lit.

Referenced by rb_ec_error_print().

## ◆ rb_exc_fatal()

void rb_exc_fatal | ( | VALUE | mesg | ) |

Raises a fatal error in the current thread.

Same as rb_exc_raise() but raises a fatal error, which Ruby codes cannot rescue.

Definition at line 683 of file eval.c.

References NIL_P.

## ◆ rb_exc_new()

VALUE rb_exc_new | ( | VALUE | etype,
|  | const char * | ptr,
|  | long | len
| ) |  |

Definition at line 959 of file error.c.

References len, ptr, rb_class_new_instance(), and rb_str_new.

Referenced by rb_exc_new_cstr(), and rb_interrupt().

## ◆ rb_exc_new_cstr()

VALUE rb_exc_new_cstr | ( | VALUE | etype,
|  | const char * | s
| ) |  |

Definition at line 966 of file error.c.

References rb_exc_new(), and strlen().

## ◆ rb_exc_new_str()

VALUE rb_exc_new_str | ( | VALUE | etype,
|  | VALUE | str
| ) |  |

Definition at line 972 of file error.c.

References rb_class_new_instance(), str, and StringValue().

Referenced by rb_error_frozen_object(), and rb_keyword_error_new().

## ◆ rb_exc_raise()

void rb_exc_raise | ( | VALUE | mesg | ) |

Raises an exception in the current thread.

Parameters

  [in] | mesg | an Exception class or an `Exception` object.

Exceptions

  always | raises an instance of the given exception class or the given `Exception` object.

Definition at line 667 of file eval.c.

References NIL_P.

Referenced by rb_enc_raise(), rb_exit(), rb_f_abort(), rb_interrupt(), rb_mod_syserr_fail(), rb_mod_syserr_fail_str(), rb_name_error(), rb_name_error_str(), rb_sys_fail(), rb_sys_fail_str(), rb_syserr_fail(), rb_syserr_fail_str(), rb_throw_obj(), rb_vm_jump_tag_but_local_jump(), and rb_vraise().

## ◆ rb_exc_set_backtrace()

MJIT_FUNC_EXPORTED VALUE rb_exc_set_backtrace | ( | VALUE | exc,
|  | VALUE | bt
| ) |  |

Definition at line 1310 of file error.c.

## ◆ rb_fatal()

void rb_fatal | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2720 of file error.c.

References fprintf(), rb_print_backtrace(), ruby_thread_has_gvl_p(), and stderr.

## ◆ rb_frozen_error_raise()

void rb_frozen_error_raise | ( | VALUE | frozen_obj,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2980 of file error.c.

References exc, fmt, rb_eFrozenError, rb_exc_new3, rb_ivar_set(), rb_vsprintf(), va_end, and va_start.

Referenced by rb_class_modify_check(), and rb_thread_local_aset().

## ◆ rb_get_backtrace()

VALUE rb_get_backtrace | ( | VALUE | exc | ) |

Definition at line 1229 of file error.c.

Referenced by rb_ec_error_print().

## ◆ rb_get_message()

VALUE rb_get_message | ( | VALUE | exc | ) |

Definition at line 1051 of file error.c.

References exc, and rb_check_funcall().

Referenced by rb_ec_error_print().

## ◆ rb_interrupt()

void rb_interrupt | ( | void |  | ) |

Raises an `Interrupt` exception.

Definition at line 696 of file eval.c.

References rb_eInterrupt, rb_exc_new(), and rb_exc_raise().

Referenced by rb_signal_exec().

## ◆ rb_invalid_str()

void rb_invalid_str | ( | const char * | str,
|  | const char * | type
| ) |  |

Definition at line 1865 of file error.c.

References PRIsVALUE, rb_eArgError, rb_raise(), rb_str_new2, and str.

## ◆ rb_iseqw_local_variables()

VALUE rb_iseqw_local_variables | ( | VALUE | iseqval | ) |

Definition at line 3321 of file iseq.c.

References rb_iseq_local_variables().

## ◆ rb_iseqw_new()

VALUE rb_iseqw_new | ( | const rb_iseq_t * |  | ) |

Definition at line 1157 of file iseq.c.

## ◆ rb_jump_tag()

void rb_jump_tag | ( | int | tag | ) |

Continues the exception caught by rb_protect() and rb_eval_string_protect().

This function never return to the caller.

Parameters

  [in] | the | value of `*state` which the protect function has set to the their last parameter.

Definition at line 883 of file eval.c.

References EC_JUMP_TAG, GET_EC, TAG_FATAL, unknown_longjmp_status, and UNLIKELY.

Referenced by ossl_buf2str(), and ossl_membio2str().

## ◆ rb_key_err_new()

VALUE rb_key_err_new | ( | VALUE | mesg,
|  | VALUE | recv,
|  | VALUE | key
| ) |  |

Definition at line 1907 of file error.c.

References exc, id_bt, id_mesg, Qnil, rb_eKeyError, rb_ivar_set(), and rb_obj_alloc().

## ◆ rb_load_fail()

void rb_load_fail | ( | VALUE | path,
|  | const char * | err
| ) |  |

Definition at line 2965 of file error.c.

References err, path, rb_str_append(), rb_str_buf_new_cstr, and rb_str_cat2.

## ◆ rb_loaderror()

void rb_loaderror | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2688 of file error.c.

References fmt, rb_enc_vsprintf(), rb_locale_encoding(), va_end, and va_start.

Referenced by dln_load(), and rb_f_require_relative().

## ◆ rb_loaderror_with_path()

void rb_loaderror_with_path | ( | VALUE | path,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2700 of file error.c.

References fmt, rb_enc_vsprintf(), rb_locale_encoding(), va_end, and va_start.

## ◆ rb_make_exception()

VALUE rb_make_exception | ( | int | argc,
|  | const VALUE * | argv
| ) |  |

Make an `Exception` object from the list of arguments in a manner similar to `Kernel#raise`.

Parameters

  [in] | argc | the number of arguments
  [in] | argv | a pointer to the array of arguments.

The first form of this function takes a `String` argument. Then it returns a `RuntimeError` whose error message is the given value.

The second from of this function takes an `Exception` object. Then it just returns the given value.

The last form takes an exception class, an optional error message and an optional array of backtrace. Then it passes the optional arguments to `#exception` method of the exception class.

Returns
  the exception object, or `Qnil` if `argc` is 0.

Definition at line 850 of file eval.c.

## ◆ rb_mod_sys_fail()

void rb_mod_sys_fail | ( | VALUE | mod,
|  | const char * | mesg
| ) |  |

Definition at line 2833 of file error.c.

References exc.

## ◆ rb_mod_sys_fail_str()

void rb_mod_sys_fail_str | ( | VALUE | mod,
|  | VALUE | mesg
| ) |  |

Definition at line 2841 of file error.c.

References exc.

## ◆ rb_mod_syserr_fail()

void rb_mod_syserr_fail | ( | VALUE | mod,
|  | int | e,
|  | const char * | mesg
| ) |  |

Definition at line 2849 of file error.c.

References exc, mod, rb_exc_raise(), rb_extend_object(), and rb_syserr_new().

## ◆ rb_mod_syserr_fail_str()

void rb_mod_syserr_fail_str | ( | VALUE | mod,
|  | int | e,
|  | VALUE | mesg
| ) |  |

Definition at line 2857 of file error.c.

References exc, mod, rb_exc_raise(), rb_extend_object(), and rb_syserr_new_str().

## ◆ rb_name_err_new()

VALUE rb_name_err_new | ( | VALUE | mesg,
|  | VALUE | recv,
|  | VALUE | method
| ) |  |

Definition at line 1592 of file error.c.

References exc, rb_eNameError, and rb_obj_alloc().

Referenced by rb_make_no_method_exception().

## ◆ rb_name_error()

void rb_name_error | ( | ID | id,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 1513 of file error.c.

References argv, exc, fmt, ID2SYM, rb_class_new_instance(), rb_eNameError, rb_exc_raise(), rb_vsprintf(), va_end, and va_start.

Referenced by rb_gvar_readonly_setter(), and rb_id_attrset().

## ◆ rb_name_error_str()

void rb_name_error_str | ( | VALUE | str,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 1528 of file error.c.

References argv, exc, fmt, rb_class_new_instance(), rb_eNameError, rb_exc_raise(), rb_vsprintf(), str, va_end, and va_start.

Referenced by rb_f_untrace_var().

## ◆ rb_nomethod_err_new()

VALUE rb_nomethod_err_new | ( | VALUE | mesg,
|  | VALUE | recv,
|  | VALUE | method,
|  | VALUE | args,
|  | int | priv
| ) |  |

Definition at line 1673 of file error.c.

References exc, rb_eNoMethodError, and rb_obj_alloc().

Referenced by rb_make_no_method_exception().

## ◆ rb_notimplement()

void rb_notimplement | ( | void |  | ) |

Definition at line 2712 of file error.c.

References PRIsVALUE, rb_eNotImpError, rb_frame_this_func(), rb_id2str, and rb_raise().

Referenced by flock(), and rb_f_notimplement().

## ◆ rb_protect()

VALUE rb_protect | ( | VALUE(*)(VALUE) | proc,
|  | VALUE | data,
|  | int * | pstate
| ) |  |

Protects a function call from potential global escapes from the function.

Such global escapes include exceptions, `Kernel#throw`, `break` in an iterator, for example. It first calls the function func with arg as the argument. If no exception occurred during func, it returns the result of func and *state is zero. Otherwise, it returns Qnil and sets *state to nonzero. If state is NULL, it is not set in both cases.

You have to clear the error info with rb_set_errinfo(Qnil) when ignoring the caught exception.

See also
  rb_rescue
  rb_rescue2
  rb_ensure

Definition at line 1071 of file eval.c.

Referenced by goruby_run_node(), ossl_generate_cb_2(), ossl_pem_passwd_cb(), ossl_pkey_new(), ossl_str_new(), ossl_verify_cb_call(), rb_eval_string_protect(), rb_eval_string_wrap(), and rb_execarg_parent_start().

## ◆ rb_raise()

void rb_raise | ( | VALUE | exc,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2669 of file error.c.

References exc, fmt, rb_vraise(), va_end, and va_start.

Referenced by generic_to_value(), Init_openssl(), int_to_ffi_type(), ole_variant2val(), onigenc_single_byte_code_to_mbc(), rb_add_method_cfunc(), rb_alias(), rb_alloc_tmp_buffer(), rb_ary_resize(), rb_ary_store(), rb_autoload(), rb_autoload_str(), rb_big_mul_karatsuba(), rb_big_mul_toom3(), rb_bool_expected(), rb_check_id(), rb_check_inheritable(), rb_class_inherited_p(), rb_class_superclass(), rb_const_set(), rb_current_receiver(), rb_declare_transcoder(), rb_define_class(), rb_define_class_id_under(), rb_define_module(), rb_define_module_id_under(), rb_econv_append(), rb_enc_associate_index(), rb_enc_check(), rb_enc_codelen(), rb_enc_codepoint_len(), rb_enc_set_default_external(), rb_enc_uint_chr(), rb_eof_error(), rb_error_frozen(), rb_execarg_addopt(), rb_fix2str(), rb_Hash(), rb_insecure_operation(), rb_int_powm(), rb_invalid_str(), rb_io_check_byte_readable(), rb_io_check_char_readable(), rb_io_check_initialized(), rb_io_check_writable(), rb_io_modestr_fmode(), rb_iseq_ibf_dump(), rb_lambda_call(), rb_marshal_define_compat(), rb_must_asciicompat(), rb_notimplement(), rb_num2fix(), rb_num2long(), rb_num_zerodiv(), rb_obj_encoding(), rb_obj_init_copy(), rb_path_to_class(), rb_range_beg_len(), rb_secure(), rb_set_errinfo(), rb_set_safe_level(), rb_str_cat(), rb_str_cat_conv_enc_opts(), rb_str_concat(), rb_str_ellipsize(), rb_str_modify_expand(), rb_str_plus(), rb_str_resize(), rb_str_setter(), rb_str_unlocktmp(), rb_struct_init_copy(), rb_struct_members(), rb_sym_proc_call(), rb_thread_stop(), rb_thread_wakeup(), rb_time_new(), rb_tracearg_eval_script(), rb_tracearg_instruction_sequence(), rb_tracearg_object(), rb_tracearg_raised_exception(), rb_tracearg_return_value(), rb_undef(), rb_uv_to_utf8(), rb_vm_cbase(), rb_vm_ifunc_new(), rb_vm_make_binding(), rb_warning_category_from_name(), rb_yield_splat(), rb_yield_splat_kw(), rsock_io_socket_addrinfo(), RUBY_ALIAS_FUNCTION(), ruby_malloc_size_overflow(), value_to_generic(), and VpAlloc().

## ◆ rb_report_bug_valist()

void rb_report_bug_valist | ( | VALUE | file,
|  | int | line,
|  | const char * | fmt,
|  | va_list | args
| ) |  |

Definition at line 710 of file error.c.

References fmt, NULL, report_bug_valist, and RSTRING_PTR.

## ◆ rb_rescue()

VALUE rb_rescue | ( | VALUE(*)(VALUE) | b_proc,
|  | VALUE | data1,
|  | VALUE(*)(VALUE, VALUE) | r_proc,
|  | VALUE | data2
| ) |  |

An equivalent of `rescue` clause.

Equivalent to `begin .. rescue .. end`.

It is same as

rb_rescue2(b_proc, data1, r_proc, data2, rb_eStandardError, (VALUE)0);

See also
  rb_rescue2
  rb_ensure
  rb_protect

Definition at line 1046 of file eval.c.

References rb_eStandardError, and rb_rescue2().

## ◆ rb_rescue2()

VALUE rb_rescue2 | ( | VALUE(*)(VALUE) | b_proc,
|  | VALUE | data1,
|  | VALUE(*)(VALUE, VALUE) | r_proc,
|  | VALUE | data2,
|  |  | ...
| ) |  |

An equivalent of `rescue` clause.

Equivalent to `begin .. rescue err_type .. end`

Parameters

  [in] | b_proc | a function which potentially raises an exception.
  [in] | data1 | the argument of b_proc
  [in] | r_proc | a function which rescues an exception in b_proc.
  [in] | data2 | the first argument of r_proc
  [in] | ... | 1 or more exception classes. Must be terminated by ``(VALUE)0.

First it calls the function b_proc, with data1 as the argument. When b_proc raises an exception, it calls r_proc with data2 and the exception object if the exception is a kind of one of the given exception classes.

Returns
  the return value of b_proc if no exception occurs, or the return value of r_proc if otherwise.

See also
  rb_rescue
  rb_ensure
  rb_protect

Definition at line 961 of file eval.c.

References rb_vrescue2(), va_end, and va_start.

Referenced by rb_rescue().

## ◆ rb_set_errinfo()

void rb_set_errinfo | ( | VALUE | err | ) |

Sets the current exception (`$!`) to the given value.

Parameters

  [in] | err | an `Exception` object or `Qnil`.

Exceptions

  TypeError | if err is neither an exception nor `nil`.

Note
  this function does not raise the exception. Use `rb_raise()` when you want to raise.

Definition at line 1895 of file eval.c.

References err, GET_EC, NIL_P, rb_eException, rb_eTypeError, rb_obj_is_kind_of(), and rb_raise().

## ◆ rb_str_end_with_asciichar()

int rb_str_end_with_asciichar | ( | VALUE | str,
|  | int | c
| ) |  |

Definition at line 7685 of file io.c.

References ENCODING_GET, len, n, ptr, rb_enc_ascget(), rb_enc_from_index(), rb_enc_mbminlen, rb_encoding, RSTRING_LEN, RSTRING_PTR, and str.

## ◆ rb_syntax_error_append()

VALUE rb_syntax_error_append | ( | VALUE | exc,
|  | VALUE | file,
|  | int | line,
|  | int | column,
|  | rb_encoding * | enc,
|  | const char * | fmt,
|  | va_list | args
| ) |  |

Definition at line 104 of file error.c.

References exc, NIL_P, NULL, rb_enc_str_new(), and RSTRING_PTR.

## ◆ rb_sys_enc_warning()

void rb_sys_enc_warning | ( | rb_encoding * | enc,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2943 of file error.c.

References errno, fmt, RTEST, ruby_verbose, and with_warning_string.

## ◆ rb_sys_fail()

void rb_sys_fail | ( | const char * | mesg | ) |

Definition at line 2793 of file error.c.

References rb_exc_raise().

Referenced by rb_timespec_now(), rsock_bsock_send(), rsock_make_fd_nonblock(), rsock_sock_listen(), and ruby_getcwd().

## ◆ rb_sys_fail_str()

void rb_sys_fail_str | ( | VALUE | mesg | ) |

Definition at line 2799 of file error.c.

References rb_exc_raise().

Referenced by ruby_setenv().

## ◆ rb_sys_warning()

void rb_sys_warning | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2919 of file error.c.

References errno, fmt, RTEST, ruby_verbose, and with_warning_string.

## ◆ rb_syserr_enc_warning()

void rb_syserr_enc_warning | ( | int | err,
|  | rb_encoding * | enc,
|  | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 2955 of file error.c.

References fmt, RTEST, ruby_verbose, and with_warning_string.

## ◆ rb_syserr_fail()

void rb_syserr_fail | ( | int | e,
|  | const char * | mesg
| ) |  |

Definition at line 2781 of file error.c.

References rb_exc_raise(), and rb_syserr_new().

Referenced by rb_fdopen(), rsock_init_sock(), rsock_raise_socket_error(), rsock_syserr_fail_path(), and ruby_getcwd().

## ◆ rb_syserr_fail_str()

void rb_syserr_fail_str | ( | int | e,
|  | VALUE | mesg
| ) |  |

Definition at line 2787 of file error.c.

References rb_exc_raise(), and rb_syserr_new_str().

Referenced by rsock_syserr_fail_host_port(), rsock_syserr_fail_path(), and rsock_syserr_fail_raddrinfo().

## ◆ rb_syserr_new()

VALUE rb_syserr_new | ( | int | n,
|  | const char * | mesg
| ) |  |

Definition at line 2767 of file error.c.

References arg, n, Qnil, rb_str_new2, and rb_syserr_new_str().

Referenced by rb_mod_syserr_fail(), and rb_syserr_fail().

## ◆ rb_syserr_new_str()

VALUE rb_syserr_new_str | ( | int | n,
|  | VALUE | arg
| ) |  |

Definition at line 2775 of file error.c.

References arg, and rb_class_new_instance().

Referenced by rb_mod_syserr_fail_str(), rb_syserr_fail_str(), and rb_syserr_new().

## ◆ rb_typeddata_inherited_p()

int rb_typeddata_inherited_p | ( | const rb_data_type_t * | child,
|  | const rb_data_type_t * | parent
| ) |  |

Definition at line 862 of file error.c.

References rb_data_type_struct::parent.

Referenced by rb_typeddata_is_kind_of().

## ◆ rb_typeddata_is_instance_of()

int rb_typeddata_is_instance_of | ( | VALUE | obj,
|  | const rb_data_type_t * | data_type
| ) |  |

Definition at line 883 of file error.c.

## ◆ rb_typeddata_is_kind_of()

int rb_typeddata_is_kind_of | ( | VALUE | obj,
|  | const rb_data_type_t * | data_type
| ) |  |

Definition at line 872 of file error.c.

References obj, RB_TYPE_P, rb_typeddata_inherited_p(), RTYPEDDATA_P, RTYPEDDATA_TYPE, and T_DATA.

Referenced by rb_backtrace_p(), rb_obj_is_fiber(), rb_obj_is_method(), rb_obj_is_mutex(), rb_obj_is_proc(), and rb_obj_is_thread().

## ◆ rb_unexpected_type()

void rb_unexpected_type | ( | VALUE | x,
|  | int | t
| ) |  |

Definition at line 852 of file error.c.

References Qundef, rb_bug(), and UNDEF_LEAKED.

## ◆ rb_vraise()

void rb_vraise | ( | VALUE | exc,
|  | const char * | fmt,
|  | va_list | ap
| ) |  |

Definition at line 2663 of file error.c.

References exc, fmt, rb_exc_new3, rb_exc_raise(), and rb_vsprintf().

Referenced by rb_raise().

## ◆ rb_warn()

void rb_warn | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 313 of file error.c.

References fmt, NIL_P, ruby_verbose, and with_warning_string.

Referenced by Init_continuation(), ossl_clear_error(), rb_check_safe_obj(), rb_const_warn_if_deprecated(), rb_define_const(), rb_eval_cmd(), rb_fdopen(), rb_find_file_ext_safe(), rb_find_file_safe(), rb_insecure_operation(), rb_require_safe(), rb_safe_level(), rb_secure(), rb_secure_update(), rb_set_safe_level(), rb_set_safe_level_force(), rb_time_succ(), rb_undef(), and ruby_safe_level_2_warning().

## ◆ rb_warn_deprecated()

void rb_warn_deprecated | ( | const char * | fmt,
|  | const char * | suggest,
|  |  | ...
| ) |  |

Definition at line 364 of file error.c.

References NIL_P, RB_WARN_CATEGORY_DEPRECATED, rb_warning_category_enabled_p(), ruby_verbose, and va_start.

## ◆ rb_warning()

void rb_warning | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 334 of file error.c.

References fmt, RTEST, ruby_verbose, and with_warning_string.

Referenced by asn1time_to_time(), rb_check_trusted(), rb_env_path_tainted(), rb_error_untrusted(), rb_gvar_undef_getter(), rb_iv_get(), rb_ivar_get(), rb_obj_infect(), rb_obj_taint(), rb_obj_tainted(), rb_obj_trust(), rb_obj_untaint(), rb_obj_untrust(), rb_obj_untrusted(), rb_tainted_str_new(), and rb_tainted_str_new_cstr().

## ◆ rb_warning_category_enabled_p()

MJIT_FUNC_EXPORTED bool rb_warning_category_enabled_p | ( | rb_warning_category_t | category | ) |

Definition at line 164 of file error.c.

Referenced by rb_const_warn_if_deprecated(), and rb_warn_deprecated().

## ◆ rb_warning_category_from_name()

rb_warning_category_t rb_warning_category_from_name | ( | VALUE | category | ) |

Definition at line 140 of file error.c.

References Check_Type, ID2SYM, PRIsVALUE, rb_eArgError, rb_intern, rb_raise(), RB_WARN_CATEGORY_DEPRECATED, RB_WARN_CATEGORY_EXPERIMENTAL, RB_WARN_CATEGORY_NONE, and T_SYMBOL.

## ◆ rb_warning_category_update()

void rb_warning_category_update | ( | unsigned int | mask,
|  | unsigned int | bits
| ) |  |

Definition at line 157 of file error.c.

## ◆ rb_warning_string()

VALUE rb_warning_string | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 344 of file error.c.

References fmt, and with_warning_string.

## Variable Documentation

## ◆ rb_cNameErrorMesg

VALUE rb_cNameErrorMesg

Definition at line 934 of file error.c.

## ◆ rb_eArgError

VALUE rb_eArgError

Definition at line 923 of file error.c.

Referenced by ossl_evp_get_cipherbyname(), rb_add_method_cfunc(), rb_alloc_tmp_buffer(), rb_autoload(), rb_autoload_str(), rb_big_mul_karatsuba(), rb_big_mul_toom3(), rb_bool_expected(), rb_declare_transcoder(), rb_define_class(), rb_define_class_id_under(), rb_econv_append(), rb_enc_associate_index(), rb_enc_codelen(), rb_enc_codepoint_len(), rb_enc_set_default_external(), rb_execarg_addopt(), rb_fix2str(), rb_invalid_str(), rb_io_modestr_fmode(), rb_keyword_error_new(), rb_lambda_call(), rb_path_to_class(), rb_set_safe_level(), rb_str_cat(), rb_str_modify_expand(), rb_str_plus(), rb_str_resize(), rb_sym_proc_call(), rb_warning_category_from_name(), rb_yield_splat(), rb_yield_splat_kw(), ruby_malloc_size_overflow(), and VpAlloc().

## ◆ rb_eEAGAIN

VALUE rb_eEAGAIN

Definition at line 54 of file error.c.

## ◆ rb_eEINPROGRESS

VALUE rb_eEINPROGRESS

Definition at line 56 of file error.c.

## ◆ rb_eEncCompatError

VALUE rb_eEncCompatError

Definition at line 929 of file error.c.

Referenced by rb_enc_check(), and rb_must_asciicompat().

## ◆ rb_eEncodingError

VALUE rb_eEncodingError

Definition at line 928 of file error.c.

## ◆ rb_eEWOULDBLOCK

VALUE rb_eEWOULDBLOCK

Definition at line 55 of file error.c.

## ◆ rb_eException

VALUE rb_eException

Definition at line 914 of file error.c.

Referenced by Init_Exception(), and rb_set_errinfo().

## ◆ rb_eFatal

VALUE rb_eFatal

Definition at line 918 of file error.c.

## ◆ rb_eFrozenError

VALUE rb_eFrozenError

Definition at line 921 of file error.c.

Referenced by rb_error_frozen(), rb_error_frozen_object(), and rb_frozen_error_raise().

## ◆ rb_eIndexError

VALUE rb_eIndexError

Definition at line 924 of file error.c.

Referenced by rb_ary_resize(), rb_ary_store(), rb_str_cat_conv_enc_opts(), and rb_str_ellipsize().

## ◆ rb_eInterrupt

VALUE rb_eInterrupt

Definition at line 916 of file error.c.

Referenced by rb_interrupt().

## ◆ rb_eKeyError

VALUE rb_eKeyError

Definition at line 925 of file error.c.

Referenced by rb_key_err_new().

## ◆ rb_eLoadError

VALUE rb_eLoadError

Definition at line 939 of file error.c.

## ◆ rb_eNameError

VALUE rb_eNameError

Definition at line 927 of file error.c.

Referenced by rb_autoload_str(), rb_name_err_new(), rb_name_error(), and rb_name_error_str().

## ◆ rb_eNoMatchingPatternError

VALUE rb_eNoMatchingPatternError

Definition at line 935 of file error.c.

## ◆ rb_eNoMemError

VALUE rb_eNoMemError

Definition at line 933 of file error.c.

## ◆ rb_eNoMethodError

VALUE rb_eNoMethodError

Definition at line 930 of file error.c.

Referenced by rb_make_no_method_exception(), and rb_nomethod_err_new().

## ◆ rb_eNotImpError

VALUE rb_eNotImpError

Definition at line 932 of file error.c.

Referenced by rb_notimplement().

## ◆ rb_eRangeError

VALUE rb_eRangeError

Definition at line 926 of file error.c.

Referenced by onigenc_single_byte_code_to_mbc(), rb_enc_uint_chr(), rb_int_powm(), rb_num2fix(), rb_range_beg_len(), rb_str_concat(), rb_time_new(), rb_uv_to_utf8(), and rb_vm_ifunc_new().

## ◆ rb_eRuntimeError

VALUE rb_eRuntimeError

Definition at line 920 of file error.c.

Referenced by generic_to_value(), Init_openssl(), Init_ossl_bn(), Init_win32ole_error(), int_to_ffi_type(), ole_variant2val(), ossl_evp_get_digestbyname(), rb_current_receiver(), rb_iseq_ibf_dump(), rb_str_unlocktmp(), rb_tracearg_eval_script(), rb_tracearg_instruction_sequence(), rb_tracearg_object(), rb_tracearg_raised_exception(), rb_tracearg_return_value(), rb_vm_cbase(), rb_vm_make_binding(), RUBY_ALIAS_FUNCTION(), val2variant_ptr(), and value_to_generic().

## ◆ rb_eScriptError

VALUE rb_eScriptError

Definition at line 937 of file error.c.

## ◆ rb_eSecurityError

VALUE rb_eSecurityError

Definition at line 931 of file error.c.

Referenced by rb_insecure_operation(), and rb_secure().

## ◆ rb_eSignal

VALUE rb_eSignal

Definition at line 917 of file error.c.

Referenced by rb_threadptr_signal_raise().

## ◆ rb_eStandardError

VALUE rb_eStandardError

Definition at line 919 of file error.c.

Referenced by exp2(), Init_fiddle(), Init_IO(), Init_ossl_asn1(), Init_ossl_bn(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_digest(), Init_ossl_ec(), Init_ossl_engine(), Init_ossl_hmac(), Init_ossl_kdf(), Init_ossl_ns_spki(), Init_ossl_ocsp(), Init_ossl_pkcs12(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_rand(), Init_ossl_ssl(), Init_ossl_ssl_session(), Init_ossl_x509attr(), Init_ossl_x509cert(), Init_ossl_x509crl(), Init_ossl_x509ext(), Init_ossl_x509req(), Init_ossl_x509revoked(), Init_ossl_x509store(), Init_Regexp(), rb_rescue(), and rsock_init_socket_init().

## ◆ rb_eSyntaxError

VALUE rb_eSyntaxError

Definition at line 938 of file error.c.

## ◆ rb_eSystemCallError

VALUE rb_eSystemCallError

Definition at line 941 of file error.c.

## ◆ rb_eSystemExit

VALUE rb_eSystemExit

Definition at line 915 of file error.c.

Referenced by rb_exit(), rb_f_abort(), and rb_threadptr_signal_exit().

## ◆ rb_eTypeError

VALUE rb_eTypeError

Definition at line 922 of file error.c.

Referenced by asn1integer_to_num(), asn1time_to_time(), num_to_asn1integer(), rb_alias(), rb_check_id(), rb_check_inheritable(), rb_class_inherited_p(), rb_class_superclass(), rb_const_set(), rb_define_class(), rb_define_class_id_under(), rb_define_module(), rb_define_module_id_under(), rb_Hash(), rb_int_powm(), rb_marshal_define_compat(), rb_num2long(), rb_obj_encoding(), rb_obj_init_copy(), rb_set_errinfo(), rb_str_setter(), rb_struct_init_copy(), rb_struct_members(), rb_undef(), and rsock_io_socket_addrinfo().

## ◆ rb_mErrno

VALUE rb_mErrno

Definition at line 942 of file error.c.

## ◆ ruby_description

const char ruby_description[]

Definition at line 43 of file version.c.

Referenced by rb_assert_failure().

## ◆ ruby_static_id_cause

ID ruby_static_id_cause

Definition at line 945 of file error.c.

VALUE
unsigned long VALUE
Definition: ruby.h:102
fmt
const VALUE int int int int int int VALUE char * fmt
Definition: rb_mjit_min_header-2.7.0.h:6462
rb_rescue2
VALUE rb_rescue2(VALUE(*b_proc)(VALUE), VALUE data1, VALUE(*r_proc)(VALUE, VALUE), VALUE data2,...)
An equivalent of rescue clause.
Definition: eval.c:961
va_start
#define va_start(v, l)
Definition: rb_mjit_min_header-2.7.0.h:3978
rb_eStandardError
VALUE rb_eStandardError
Definition: error.c:919