* NEWS: Add entry for python program space support.
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-progspace.o. (SUBDIR_PYTHON_SRCS): Add py-progspace.c. (py-progspace.o): New rule. * python/py-prettyprint.c (find_pretty_printer_from_objfiles): New function. (find_pretty_printer_from_progspace): New function. (find_pretty_printer_from_gdb): New function. (find_pretty_printer): Rewrite. * python/py-progspace.c: New file. * python/python-internal.h (program_space): Add forward decl. (pspace_to_pspace_object, pspy_get_printers): Declare. (gdbpy_initialize_pspace): Declare. * python/python.c: #include "progspace.h". (gdbpy_get_current_progspace, gdbpy_progspaces): New functions. (_initialize_python): Call gdbpy_initialize_pspace. (GdbMethods): Add current_progspace, progspaces. doc/ * gdb.texinfo (Python API): Add progspaces section. (Selecting Pretty-Printers): Progspace pretty-printers are searched too. (Progspaces In Python): New section. testsuite/ * gdb.python/py-progspace.c: New file. * gdb.python/py-progspace.exp: New file.
This commit is contained in:
parent
3f7b2faa4b
commit
fa33c3cd05
12 changed files with 540 additions and 41 deletions
|
@ -68,6 +68,7 @@ typedef int Py_ssize_t;
|
|||
struct block;
|
||||
struct value;
|
||||
struct language_defn;
|
||||
struct program_space;
|
||||
|
||||
extern PyObject *gdb_module;
|
||||
extern PyTypeObject value_object_type;
|
||||
|
@ -91,8 +92,11 @@ PyObject *symbol_to_symbol_object (struct symbol *sym);
|
|||
PyObject *block_to_block_object (struct block *block, struct objfile *objfile);
|
||||
PyObject *value_to_value_object (struct value *v);
|
||||
PyObject *type_to_type_object (struct type *);
|
||||
PyObject *objfile_to_objfile_object (struct objfile *);
|
||||
|
||||
PyObject *pspace_to_pspace_object (struct program_space *);
|
||||
PyObject *pspy_get_printers (PyObject *, void *);
|
||||
|
||||
PyObject *objfile_to_objfile_object (struct objfile *);
|
||||
PyObject *objfpy_get_printers (PyObject *, void *);
|
||||
|
||||
struct block *block_object_to_block (PyObject *obj);
|
||||
|
@ -112,6 +116,7 @@ void gdbpy_initialize_symtabs (void);
|
|||
void gdbpy_initialize_blocks (void);
|
||||
void gdbpy_initialize_types (void);
|
||||
void gdbpy_initialize_functions (void);
|
||||
void gdbpy_initialize_pspace (void);
|
||||
void gdbpy_initialize_objfile (void);
|
||||
void gdbpy_initialize_breakpoints (void);
|
||||
void gdbpy_initialize_lazy_string (void);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue