Add gdb.Objfile.progspace attribute.

gdb/ChangeLog:

	* NEWS: Mention new gdb.Objfile.progspace attribute.
	* python/py-objfile.c (objfpy_get_progspace): New function.
	(objfile_getset): New entry for "progspace".

gdb/doc/ChangeLog:

	* python.texi (Objfiles In Python): Document new progspace attribute.

gdb/testsuite/ChangeLog:

	* gdb.python/py-objfile.exp: Test progspace attribute.
This commit is contained in:
Doug Evans 2014-10-17 10:57:26 -07:00
parent a80db0157c
commit d096d8c11e
7 changed files with 43 additions and 0 deletions

View file

@ -62,6 +62,24 @@ objfpy_get_filename (PyObject *self, void *closure)
Py_RETURN_NONE;
}
/* An Objfile method which returns the objfile's progspace, or None. */
static PyObject *
objfpy_get_progspace (PyObject *self, void *closure)
{
objfile_object *obj = (objfile_object *) self;
if (obj->objfile)
{
PyObject *pspace = pspace_to_pspace_object (obj->objfile->pspace);
Py_XINCREF (pspace);
return pspace;
}
Py_RETURN_NONE;
}
static void
objfpy_dealloc (PyObject *o)
{
@ -338,6 +356,8 @@ static PyGetSetDef objfile_getset[] =
{
{ "filename", objfpy_get_filename, NULL,
"The objfile's filename, or None.", NULL },
{ "progspace", objfpy_get_progspace, NULL,
"The objfile's progspace, or None.", NULL },
{ "pretty_printers", objfpy_get_printers, objfpy_set_printers,
"Pretty printers.", NULL },
{ "frame_filters", objfpy_get_frame_filters,