aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/python-internal.h
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2016-11-08 16:18:24 -0700
committerTom Tromey <tom@tromey.com>2017-01-10 19:13:51 -0700
commit6cd67beaae58c9e870b79feea3cf74ffdf7a9b33 (patch)
treeaf9477aa6986a3a3d62ba6d3a92db73cf74a85c6 /gdb/python/python-internal.h
parent14b122bf1ce59f5f1b82f6e2a347f4ad89801f45 (diff)
downloadgdb-6cd67beaae58c9e870b79feea3cf74ffdf7a9b33.zip
gdb-6cd67beaae58c9e870b79feea3cf74ffdf7a9b33.tar.gz
gdb-6cd67beaae58c9e870b79feea3cf74ffdf7a9b33.tar.bz2
Introduce gdbpy_enter_varobj and use it
This introduces gdbpy_enter_varobj, a subclass of gdbpy_enter; then changes one function in py-varobj.c to use it. gdbpy_enter_varobj takes a varobj as an argument, similar to varobj_ensure_python_env. 2017-01-10 Tom Tromey <tom@tromey.com> * varobj.c (gdbpy_enter_varobj): New constructor. * python/python-internal.h (gdbpy_enter_varobj): New class. * python/py-varobj.c (py_varobj_get_iterator): Use gdbpy_enter_varobj.
Diffstat (limited to 'gdb/python/python-internal.h')
-rw-r--r--gdb/python/python-internal.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h
index a3b9b74..41275bb 100644
--- a/gdb/python/python-internal.h
+++ b/gdb/python/python-internal.h
@@ -526,6 +526,18 @@ class gdbpy_enter
PyObject *m_error_type, *m_error_value, *m_error_traceback;
};
+/* Like gdbpy_enter, but takes a varobj. This is a subclass just to
+ make constructor delegation a little nicer. */
+class gdbpy_enter_varobj : public gdbpy_enter
+{
+ public:
+
+ /* This is defined in varobj.c, where it can access varobj
+ internals. */
+ gdbpy_enter_varobj (const struct varobj *var);
+
+};
+
struct cleanup *ensure_python_env (struct gdbarch *gdbarch,
const struct language_defn *language);