diff options
Diffstat (limited to 'ext/dbm/SDBM_File.xs')
-rw-r--r-- | ext/dbm/SDBM_File.xs | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/ext/dbm/SDBM_File.xs b/ext/dbm/SDBM_File.xs new file mode 100644 index 0000000000..0b898ad171 --- /dev/null +++ b/ext/dbm/SDBM_File.xs @@ -0,0 +1,57 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" +#include "ext/dbm/sdbm/sdbm.h" + +typedef DBM* SDBM_File; +#define sdbm_new(dbtype,filename,flags,mode) sdbm_open(filename,flags,mode) + +MODULE = SDBM_File PACKAGE = SDBM_File PREFIX = sdbm_ + +SDBM_File +sdbm_new(dbtype, filename, flags, mode) + char * dbtype + char * filename + int flags + int mode + +void +sdbm_DESTROY(db) + SDBM_File db + CODE: + sdbm_close(db); + +datum +sdbm_fetch(db, key) + SDBM_File db + datum key + +int +sdbm_store(db, key, value, flags = DBM_REPLACE) + SDBM_File db + datum key + datum value + int flags + +int +sdbm_delete(db, key) + SDBM_File db + datum key + +datum +sdbm_firstkey(db) + SDBM_File db + +datum +sdbm_nextkey(db, key) + SDBM_File db + datum key + +int +sdbm_error(db) + SDBM_File db + +int +sdbm_clearerr(db) + SDBM_File db + |