Not found
The exact documentation you were looking for could not be found. Here is the best guess.
eql?(p1)
public
Hash equality—other and struct refer to
the same hash key if they have the same
struct subclass and have equal member values (according to Object#eql?).
Show source
static VALUE
rb_struct_eql(VALUE s, VALUE s2)
{
if (s == s2) return Qtrue;
if (!RB_TYPE_P(s2, T_STRUCT)) return Qfalse;
if (rb_obj_class(s) != rb_obj_class(s2)) return Qfalse;
if (RSTRUCT_LEN(s) != RSTRUCT_LEN(s2)) {
rb_bug("inconsistent struct"); /* should never happen */
}
return rb_exec_recursive_paired(recursive_eql, s, s2, s2);
}