summaryrefslogtreecommitdiff
path: root/gdb/doc
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2015-05-04 21:49:11 -0600
committerTom Tromey <tom@tromey.com>2016-07-13 13:59:55 -0600
commitdac790e1b9048a318e1882979d7188d82c3bd757 (patch)
treef56ffc6b0b9d3cafb09dc489d59695f9d20a93c5 /gdb/doc
parent93daf339a4d9496ecde15d3b1e852fbdb38c07d0 (diff)
downloadbinutils-gdb-dac790e1b9048a318e1882979d7188d82c3bd757.tar.gz
PR python/15620, PR python/18620 - breakpoint events in Python
This patch adds some breakpoint events to Python. In particular, there is a creation event that is emitted when a breakpoint is created; a modification event that is emitted when a breakpoint changes somehow; and a deletion event that is emitted when a breakpoint is deleted. In this patch, the event's payload is the breakpoint itself. I considered making a new event type to hold the breakpoint, but I didn't see a need. Still, I thought I would mention this as a spot where some other choice is possible. Built and regtested on x86-64 Fedora 23. 2016-07-13 Tom Tromey <tom@tromey.com> PR python/15620, PR python/18620: * python/py-evts.c (gdbpy_initialize_py_events): Call add_new_registry for new events. * python/py-events.h (events_object) <breakpoint_created, breakpoint_deleted, breakpoint_modified>: New fields. * python/py-breakpoint.c (gdbpy_breakpoint_created): Emit the breakpoint changed event. (gdbpy_breakpoint_deleted): Emit the breakpoint deleted event. (gdbpy_breakpoint_modified): New function. (gdbpy_initialize_breakpoints): Attach to the breakpoint modified observer. 2016-07-13 Tom Tromey <tom@tromey.com> PR python/15620, PR python/18620: * python.texi (Events In Python): Document new breakpoint events. 2016-07-13 Tom Tromey <tom@tromey.com> PR python/15620, PR python/18620: * gdb.python/py-breakpoint.exp (connect_event, check_last_event) (test_bkpt_events): New procs.
Diffstat (limited to 'gdb/doc')
-rw-r--r--gdb/doc/ChangeLog5
-rw-r--r--gdb/doc/python.texi15
2 files changed, 20 insertions, 0 deletions
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index b1ddc289a25..f133f334918 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,5 +1,10 @@
2016-07-13 Tom Tromey <tom@tromey.com>
+ PR python/15620, PR python/18620:
+ * python.texi (Events In Python): Document new breakpoint events.
+
+2016-07-13 Tom Tromey <tom@tromey.com>
+
PR python/17698:
* python.texi (Breakpoints In Python): Document
Breakpoint.pending.
diff --git a/gdb/doc/python.texi b/gdb/doc/python.texi
index e00bc2a7046..a17e37d6f3a 100644
--- a/gdb/doc/python.texi
+++ b/gdb/doc/python.texi
@@ -2965,6 +2965,21 @@ A gdb.Frame object representing the frame in which the register was modified.
Denotes which register was modified.
@end defvar
+@item events.breakpoint_created
+This is emitted when a new breakpoint has been created. The argument
+that is passed is the new @code{gdb.Breakpoint} object.
+
+@item events.breakpoint_modified
+This is emitted when a breakpoint has been modified in some way. The
+argument that is passed is the new @code{gdb.Breakpoint} object.
+
+@item events.breakpoint_deleted
+This is emitted when a breakpoint has been deleted. The argument that
+is passed is the @code{gdb.Breakpoint} object. When this event is
+emitted, the @code{gdb.Breakpoint} object will already be in its
+invalid state; that is, the @code{is_valid} method will return
+@code{False}.
+
@end table
@node Threads In Python