aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/python-internal.h
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>2010-04-15 19:54:13 +0000
committerDoug Evans <dje@google.com>2010-04-15 19:54:13 +0000
commitfa33c3cd050c9f8a33ab0826479fd3e0f26a3da6 (patch)
tree8aa1bd5a3237ffff09f051cad7544427a67ed81e /gdb/python/python-internal.h
parent3f7b2faa4bb3f35f6c88687b6943cdbe6003b615 (diff)
downloadgdb-fa33c3cd050c9f8a33ab0826479fd3e0f26a3da6.zip
gdb-fa33c3cd050c9f8a33ab0826479fd3e0f26a3da6.tar.gz
gdb-fa33c3cd050c9f8a33ab0826479fd3e0f26a3da6.tar.bz2
* 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.
Diffstat (limited to 'gdb/python/python-internal.h')
-rw-r--r--gdb/python/python-internal.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h
index 98d2b3f..e3368e3 100644
--- a/gdb/python/python-internal.h
+++ b/gdb/python/python-internal.h
@@ -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);