aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/python-internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/python/python-internal.h')
-rw-r--r--gdb/python/python-internal.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h
index 07650f7..9c06621 100644
--- a/gdb/python/python-internal.h
+++ b/gdb/python/python-internal.h
@@ -307,6 +307,24 @@ extern enum ext_lang_bp_stop gdbpy_breakpoint_cond_says_stop
(const struct extension_language_defn *, struct breakpoint *);
extern int gdbpy_breakpoint_has_cond (const struct extension_language_defn *,
struct breakpoint *b);
+
+extern void *gdbpy_clone_xmethod_worker_data
+ (const struct extension_language_defn *extlang, void *data);
+extern void gdbpy_free_xmethod_worker_data
+ (const struct extension_language_defn *extlang, void *data);
+extern enum ext_lang_rc gdbpy_get_matching_xmethod_workers
+ (const struct extension_language_defn *extlang,
+ struct type *obj_type, const char *method_name,
+ xmethod_worker_vec **dm_vec);
+extern enum ext_lang_rc gdbpy_get_xmethod_arg_types
+ (const struct extension_language_defn *extlang,
+ struct xmethod_worker *worker,
+ int *nargs,
+ struct type ***arg_types);
+extern struct value *gdbpy_invoke_xmethod
+ (const struct extension_language_defn *extlang,
+ struct xmethod_worker *worker,
+ struct value *obj, struct value **args, int nargs);
PyObject *gdbpy_history (PyObject *self, PyObject *args);
PyObject *gdbpy_breakpoints (PyObject *, PyObject *);
@@ -345,11 +363,13 @@ PyObject *pspace_to_pspace_object (struct program_space *)
CPYCHECKER_RETURNS_BORROWED_REF;
PyObject *pspy_get_printers (PyObject *, void *);
PyObject *pspy_get_frame_filters (PyObject *, void *);
+PyObject *pspy_get_xmethods (PyObject *, void *);
PyObject *objfile_to_objfile_object (struct objfile *)
CPYCHECKER_RETURNS_BORROWED_REF;
PyObject *objfpy_get_printers (PyObject *, void *);
PyObject *objfpy_get_frame_filters (PyObject *, void *);
+PyObject *objfpy_get_xmethods (PyObject *, void *);
PyObject *gdbarch_to_arch_object (struct gdbarch *gdbarch);
@@ -430,6 +450,8 @@ int gdbpy_initialize_new_objfile_event (void)
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION;
int gdbpy_initialize_arch (void)
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION;
+int gdbpy_initialize_xmethods (void)
+ CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION;
struct cleanup *make_cleanup_py_decref (PyObject *py);
struct cleanup *make_cleanup_py_xdecref (PyObject *py);