if (self->db)
loc_database_unref(self->db);
+ if (self->path)
+ free(self->path);
+
Py_TYPE(self)->tp_free((PyObject* )self);
}
if (!PyArg_ParseTuple(args, "s", &path))
return -1;
+ self->path = strdup(path);
+
// Open the file for reading
- FILE* f = fopen(path, "r");
+ FILE* f = fopen(self->path, "r");
if (!f)
return -1;
return 0;
}
+static PyObject* Database_repr(DatabaseObject* self) {
+ return PyUnicode_FromFormat("<Database %s>", self->path);
+}
+
static PyObject* Database_get_description(DatabaseObject* self) {
const char* description = loc_database_get_description(self->db);
tp_doc: "Database object",
tp_methods: Database_methods,
tp_getset: Database_getsetters,
+ tp_repr: (reprfunc)Database_repr,
};