• Home
  • Raw
  • Download

Lines Matching refs:dp

57     bsddbobject *dp;  in newdbhashobject()  local
60 if ((dp = PyObject_New(bsddbobject, &Bsddbtype)) == NULL) in newdbhashobject()
74 dp->di_bsddb = dbopen(file, flags, mode, DB_HASH, &info); in newdbhashobject()
76 if (dp->di_bsddb == NULL) { in newdbhashobject()
79 dp->di_lock = NULL; in newdbhashobject()
81 Py_DECREF(dp); in newdbhashobject()
85 dp->di_size = -1; in newdbhashobject()
86 dp->di_type = DB_HASH; in newdbhashobject()
89 dp->di_lock = PyThread_allocate_lock(); in newdbhashobject()
90 if (dp->di_lock == NULL) { in newdbhashobject()
92 Py_DECREF(dp); in newdbhashobject()
97 return (PyObject *)dp; in newdbhashobject()
105 bsddbobject *dp; in newdbbtobject() local
108 if ((dp = PyObject_New(bsddbobject, &Bsddbtype)) == NULL) in newdbbtobject()
124 dp->di_bsddb = dbopen(file, flags, mode, DB_BTREE, &info); in newdbbtobject()
126 if (dp->di_bsddb == NULL) { in newdbbtobject()
129 dp->di_lock = NULL; in newdbbtobject()
131 Py_DECREF(dp); in newdbbtobject()
135 dp->di_size = -1; in newdbbtobject()
136 dp->di_type = DB_BTREE; in newdbbtobject()
139 dp->di_lock = PyThread_allocate_lock(); in newdbbtobject()
140 if (dp->di_lock == NULL) { in newdbbtobject()
142 Py_DECREF(dp); in newdbbtobject()
147 return (PyObject *)dp; in newdbbtobject()
155 bsddbobject *dp; in newdbrnobject() local
159 if ((dp = PyObject_New(bsddbobject, &Bsddbtype)) == NULL) in newdbrnobject()
177 dp->di_bsddb = NULL; in newdbrnobject()
182 dp->di_bsddb = dbopen(file, flags, mode, DB_RECNO, &info); in newdbrnobject()
185 if (dp->di_bsddb == NULL) { in newdbrnobject()
188 dp->di_lock = NULL; in newdbrnobject()
190 Py_DECREF(dp); in newdbrnobject()
194 dp->di_size = -1; in newdbrnobject()
195 dp->di_type = DB_RECNO; in newdbrnobject()
198 dp->di_lock = PyThread_allocate_lock(); in newdbrnobject()
199 if (dp->di_lock == NULL) { in newdbrnobject()
201 Py_DECREF(dp); in newdbrnobject()
206 return (PyObject *)dp; in newdbrnobject()
210 bsddb_dealloc(bsddbobject *dp) in bsddb_dealloc() argument
213 if (dp->di_lock) { in bsddb_dealloc()
214 PyThread_acquire_lock(dp->di_lock, 0); in bsddb_dealloc()
215 PyThread_release_lock(dp->di_lock); in bsddb_dealloc()
216 PyThread_free_lock(dp->di_lock); in bsddb_dealloc()
217 dp->di_lock = NULL; in bsddb_dealloc()
220 if (dp->di_bsddb != NULL) { in bsddb_dealloc()
223 status = (dp->di_bsddb->close)(dp->di_bsddb); in bsddb_dealloc()
230 PyObject_Del(dp); in bsddb_dealloc()
244 bsddb_length(bsddbobject *dp) in bsddb_length() argument
246 check_bsddbobject_open(dp, -1); in bsddb_length()
247 if (dp->di_size < 0) { in bsddb_length()
251 BSDDB_BGN_SAVE(dp) in bsddb_length()
252 for (status = (dp->di_bsddb->seq)(dp->di_bsddb, in bsddb_length()
255 status = (dp->di_bsddb->seq)(dp->di_bsddb, in bsddb_length()
258 BSDDB_END_SAVE(dp) in bsddb_length()
263 dp->di_size = size; in bsddb_length()
265 return dp->di_size; in bsddb_length()
269 bsddb_subscript(bsddbobject *dp, PyObject *key) in bsddb_subscript() argument
279 if (dp->di_type == DB_RECNO) { in bsddb_subscript()
297 check_bsddbobject_open(dp, NULL); in bsddb_subscript()
299 BSDDB_BGN_SAVE(dp) in bsddb_subscript()
300 status = (dp->di_bsddb->get)(dp->di_bsddb, &krec, &drec, 0); in bsddb_subscript()
306 BSDDB_END_SAVE(dp) in bsddb_subscript()
322 bsddb_ass_sub(bsddbobject *dp, PyObject *key, PyObject *value) in bsddb_ass_sub() argument
330 if (dp->di_type == DB_RECNO) { in bsddb_ass_sub()
348 check_bsddbobject_open(dp, -1); in bsddb_ass_sub()
349 dp->di_size = -1; in bsddb_ass_sub()
351 BSDDB_BGN_SAVE(dp) in bsddb_ass_sub()
352 status = (dp->di_bsddb->del)(dp->di_bsddb, &krec, 0); in bsddb_ass_sub()
353 BSDDB_END_SAVE(dp) in bsddb_ass_sub()
363 BSDDB_BGN_SAVE(dp) in bsddb_ass_sub()
364 status = (dp->di_bsddb->put)(dp->di_bsddb, &krec, &drec, 0); in bsddb_ass_sub()
365 BSDDB_END_SAVE(dp) in bsddb_ass_sub()
384 bsddb_close(bsddbobject *dp) in bsddb_close() argument
386 if (dp->di_bsddb != NULL) { in bsddb_close()
388 BSDDB_BGN_SAVE(dp) in bsddb_close()
389 status = (dp->di_bsddb->close)(dp->di_bsddb); in bsddb_close()
390 BSDDB_END_SAVE(dp) in bsddb_close()
392 dp->di_bsddb = NULL; in bsddb_close()
397 dp->di_bsddb = NULL; in bsddb_close()
403 bsddb_keys(bsddbobject *dp) in bsddb_keys() argument
411 check_bsddbobject_open(dp, NULL); in bsddb_keys()
415 BSDDB_BGN_SAVE(dp) in bsddb_keys()
416 status = (dp->di_bsddb->seq)(dp->di_bsddb, &krec, &drec, R_FIRST); in bsddb_keys()
422 BSDDB_END_SAVE(dp) in bsddb_keys()
425 if (dp->di_type == DB_RECNO) in bsddb_keys()
441 BSDDB_BGN_SAVE(dp) in bsddb_keys()
442 status = (dp->di_bsddb->seq) in bsddb_keys()
443 (dp->di_bsddb, &krec, &drec, R_NEXT); in bsddb_keys()
451 BSDDB_END_SAVE(dp) in bsddb_keys()
459 if (dp->di_size < 0) in bsddb_keys()
460 dp->di_size = PyList_Size(list); /* We just did the work */ in bsddb_keys()
465 bsddb_has_key(bsddbobject *dp, PyObject *args) in bsddb_has_key() argument
473 if (dp->di_type == DB_RECNO) { in bsddb_has_key()
489 check_bsddbobject_open(dp, NULL); in bsddb_has_key()
491 BSDDB_BGN_SAVE(dp) in bsddb_has_key()
492 status = (dp->di_bsddb->get)(dp->di_bsddb, &krec, &drec, 0); in bsddb_has_key()
493 BSDDB_END_SAVE(dp) in bsddb_has_key()
503 bsddb_set_location(bsddbobject *dp, PyObject *key) in bsddb_set_location() argument
513 if (dp->di_type == DB_RECNO) { in bsddb_set_location()
529 check_bsddbobject_open(dp, NULL); in bsddb_set_location()
531 BSDDB_BGN_SAVE(dp) in bsddb_set_location()
532 status = (dp->di_bsddb->seq)(dp->di_bsddb, &krec, &drec, R_CURSOR); in bsddb_set_location()
538 BSDDB_END_SAVE(dp) in bsddb_set_location()
548 if (dp->di_type == DB_RECNO) in bsddb_set_location()
559 bsddb_seq(bsddbobject *dp, int sequence_request) in bsddb_seq() argument
567 check_bsddbobject_open(dp, NULL); in bsddb_seq()
571 BSDDB_BGN_SAVE(dp) in bsddb_seq()
572 status = (dp->di_bsddb->seq)(dp->di_bsddb, &krec, in bsddb_seq()
582 BSDDB_END_SAVE(dp) in bsddb_seq()
596 if (dp->di_type == DB_RECNO) in bsddb_seq()
608 bsddb_next(bsddbobject *dp) in bsddb_next() argument
610 return bsddb_seq(dp, R_NEXT); in bsddb_next()
613 bsddb_previous(bsddbobject *dp) in bsddb_previous() argument
615 return bsddb_seq(dp, R_PREV); in bsddb_previous()
618 bsddb_first(bsddbobject *dp) in bsddb_first() argument
620 return bsddb_seq(dp, R_FIRST); in bsddb_first()
623 bsddb_last(bsddbobject *dp) in bsddb_last() argument
625 return bsddb_seq(dp, R_LAST); in bsddb_last()
628 bsddb_sync(bsddbobject *dp) in bsddb_sync() argument
632 check_bsddbobject_open(dp, NULL); in bsddb_sync()
633 BSDDB_BGN_SAVE(dp) in bsddb_sync()
634 status = (dp->di_bsddb->sync)(dp->di_bsddb, 0); in bsddb_sync()
635 BSDDB_END_SAVE(dp) in bsddb_sync()
656 bsddb_getattr(PyObject *dp, char *name) in bsddb_getattr() argument
658 return Py_FindMethod(bsddb_methods, dp, name); in bsddb_getattr()