Make it simpler to add events to Python
The first patch in this series went through several iterations as I'd forgotten how many places had to be touched to add a new event and a new event type. This patch simplifies the process using two new ".def" files. Now, a new event type can be added by adding a line to "py-event-types.def", and a new event registry can be added by adding a line to "py-all-events.def". ChangeLog 2017-09-11 Tom Tromey <tom@tromey.com> * python/python.c (do_start_initialization): Use py-event-types.def to initialize types. Define all object type structures. * python/python-internal.h: Don't declare event initialization functions. * python/py-threadevent.c (thread_event_object_type): Don't define. * python/py-stopevent.c (stop_event_object_type): Don't define. * python/py-signalevent.c (signal_event_object_type): Don't declare or define. * python/py-newobjfileevent.c (new_objfile_event_object_type) (clear_objfiles_event_object_type): Don't declare or define. * python/py-infevents.c (inferior_call_pre_event_object_type) (inferior_call_post_event_object_type) (register_changed_event_object_type) (memory_changed_event_object_type): Don't declare or define. * python/py-inferior.c (new_thread_event_object_type) (new_inferior_event_object_type) (inferior_deleted_event_object_type): Don't declare or define. * python/py-exitedevent.c (exited_event_object_type): Don't declare or define. * python/py-evts.c (gdbpy_initialize_py_events): Use py-all-events.def. * python/py-events.h (thread_event_object_type): Don't declare. (events_object): Use py-all-events.def. * python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove. Use py-event-types.def. * python/py-event-types.def: New file. * python/py-continueevent.c (create_continue_event_object): Don't declare or define. * python/py-bpevent.c (breakpoint_event_object_type): Don't declare or define. * python/py-all-events.def: New file.
This commit is contained in:
parent
35c61a1dd5
commit
7d221d749c
17 changed files with 250 additions and 303 deletions
|
@ -20,9 +20,6 @@
|
|||
#include "defs.h"
|
||||
#include "py-event.h"
|
||||
|
||||
extern PyTypeObject exited_event_object_type
|
||||
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF ("event_object");
|
||||
|
||||
static PyObject *
|
||||
create_exited_event_object (const LONGEST *exit_code, struct inferior *inf)
|
||||
{
|
||||
|
@ -67,10 +64,3 @@ emit_exited_event (const LONGEST *exit_code, struct inferior *inf)
|
|||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
GDBPY_NEW_EVENT_TYPE (exited,
|
||||
"gdb.ExitedEvent",
|
||||
"ExitedEvent",
|
||||
"GDB exited event object",
|
||||
event_object_type);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue