Go to the source code of this file.
◆ dbClose()
Definition at line 322 of file sing_dbm.cc.
#define omFreeSize(addr, size)
#define SI_LINK_SET_CLOSE_P(l)
◆ dbOpen()
Definition at line 285 of file sing_dbm.cc.
287 const char *mode =
"r";
289 int dbm_flags = O_RDONLY | O_CREAT;
292 && ((
l->mode[0]==
'w')||(
l->mode[1]==
'w')))
294 dbm_flags = O_RDWR | O_CREAT;
309 if(flag & SI_LINK_WRITE)
313 l->data=(
void *)(db);
DBM * dbm_open(char *file, int flags, int mode)
#define SI_LINK_SET_R_OPEN_P(l)
#define SI_LINK_SET_RW_OPEN_P(l)
◆ dbRead1()
Definition at line 381 of file sing_dbm.cc.
LINKAGE leftv dbRead2(si_link l, leftv key)
◆ dbRead2()
Definition at line 335 of file sing_dbm.cc.
346 d_key.dsize = strlen(d_key.dptr)+1;
355 WerrorS(
"read(`DBM link`,`string`) expected");
Class used for (list of) interpreter objects.
void WerrorS(const char *s)
datum dbm_fetch(register DBM *db, datum key)
datum dbm_nextkey(register DBM *db)
const Variable & v
< [in] a sqrfree bivariate poly
datum dbm_firstkey(DBM *db)
◆ dbWrite()
Definition at line 386 of file sing_dbm.cc.
401 d_key.
dptr = (
char *)key->Data();
403 d_value.
dptr = (
char *)key->next->Data();
412 Werror(
"DBM link I/O error. Is '%s' readonly?",
l->name);
422 d_key.
dptr = (
char *)key->Data();
430 WerrorS(
"write(`DBM link`,`key string` [,`data string`]) expected");
int dbm_store(register DBM *db, datum key, datum dat, int replace)
void WerrorS(const char *s)
int dbm_delete(register DBM *db, datum key)
void Werror(const char *fmt,...)