Lines Matching refs:dp

74     dbmobject *dp = PyObject_GC_New(dbmobject, state->dbm_type);
75 if (dp == NULL) {
78 dp->di_size = -1;
79 dp->flags = flags;
80 PyObject_GC_Track(dp);
83 if ( (dp->di_dbm = dbm_open((char *)file, flags, mode)) == 0 ) {
85 Py_DECREF(dp);
88 return (PyObject *)dp;
93 dbm_traverse(dbmobject *dp, visitproc visit, void *arg)
95 Py_VISIT(Py_TYPE(dp));
100 dbm_dealloc(dbmobject *dp)
102 PyObject_GC_UnTrack(dp);
103 if (dp->di_dbm) {
104 dbm_close(dp->di_dbm);
106 PyTypeObject *tp = Py_TYPE(dp);
107 tp->tp_free(dp);
112 dbm_length(dbmobject *dp)
114 _dbm_state *state = PyType_GetModuleState(Py_TYPE(dp));
116 if (dp->di_dbm == NULL) {
120 if ( dp->di_size < 0 ) {
125 for ( key=dbm_firstkey(dp->di_dbm); key.dptr;
126 key = dbm_nextkey(dp->di_dbm))
128 dp->di_size = size;
130 return dp->di_size;
134 dbm_subscript(dbmobject *dp, PyObject *key)
138 _dbm_state *state = PyType_GetModuleState(Py_TYPE(dp));
145 check_dbmobject_open(dp, state->dbm_error);
146 drec = dbm_fetch(dp->di_dbm, krec);
151 if ( dbm_error(dp->di_dbm) ) {
152 dbm_clearerr(dp->di_dbm);
160 dbm_ass_sub(dbmobject *dp, PyObject *v, PyObject *w)
170 _dbm_state *state = PyType_GetModuleState(Py_TYPE(dp));
173 if (dp->di_dbm == NULL) {
177 dp->di_size = -1;
179 if ( dbm_delete(dp->di_dbm, krec) < 0 ) {
180 dbm_clearerr(dp->di_dbm);
183 if (dp->flags & O_RDWR) {
198 if ( dbm_store(dp->di_dbm, krec, drec, DBM_REPLACE) < 0 ) {
199 dbm_clearerr(dp->di_dbm);
205 if ( dbm_error(dp->di_dbm) ) {
206 dbm_clearerr(dp->di_dbm);
273 dbmobject *dp = (dbmobject *)self;
277 _dbm_state *state = PyType_GetModuleState(Py_TYPE(dp));
279 if ((dp)->di_dbm == NULL) {
300 val = dbm_fetch(dp->di_dbm, key);