to_a()
Returns an array of all key-value pairs contained in the database.
static VALUE fgdbm_to_a(VALUE obj) { struct dbmdata *dbmp; GDBM_FILE dbm; VALUE keystr, ary; GetDBM2(obj, dbmp, dbm); ary = rb_ary_new(); for (keystr = rb_gdbm_firstkey(dbm); RTEST(keystr); keystr = rb_gdbm_nextkey(dbm, keystr)) { rb_ary_push(ary, rb_assoc_new(keystr, rb_gdbm_fetch2(dbm, keystr))); } return ary; }