/* each_hash(with_table=false) {...} */ static VALUE each_hash(int argc, VALUE* argv, VALUE obj) { VALUE with_table; VALUE hash; check_free(obj); rb_scan_args(argc, argv, "01", &with_table); if (with_table == Qnil) with_table = Qfalse; while ((hash = fetch_hash2(obj, with_table)) != Qnil) rb_yield(hash); return obj; }