def delete_if # :yields: [key, value]
        del_keys = keys.dup
        del_keys.delete_if { |k| yield( k, fetch( k ) ) == false }
        del_keys.each { |k| delete( k ) }
        self
    end
def delete_if # :yields: [key, value]
        del_keys = keys.dup
        del_keys.delete_if { |k| yield( k, fetch( k ) ) == false }
        del_keys.each { |k| delete( k ) }
        self
    end
:call-seq:
   ydbm.delete_if { |key, value| ... }

 Calls the given block once for each +key+, +value+ pair in the database.
 Deletes all entries for which the block returns true.

 Returns +self+.