PR python/15620, PR python/18620 - breakpoint events in Python
authorTom Tromey <tom@tromey.com>
Tue, 5 May 2015 03:49:11 +0000 (21:49 -0600)
committerTom Tromey <tom@tromey.com>
Wed, 13 Jul 2016 19:59:55 +0000 (13:59 -0600)
commitdac790e1b9048a318e1882979d7188d82c3bd757
treef56ffc6b0b9d3cafb09dc489d59695f9d20a93c5
parent93daf339a4d9496ecde15d3b1e852fbdb38c07d0
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.
gdb/ChangeLog
gdb/doc/ChangeLog
gdb/doc/python.texi
gdb/python/py-breakpoint.c
gdb/python/py-events.h
gdb/python/py-evts.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-breakpoint.exp