This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Why do functions objfpy_new and pspy_new exist?


Hi.

Normally, python wrappers of gdb objects are created with a
foo_to_foo_object function.
E.g., objfile_to_objfile_object and pspace_to_pspace_object.

So why do objfpy_new and pspy_new exist?
[defined in py-objfile.c and py-progspace.c respectively]

IOW, when would one ever usefully do something with
foo_objfile = gdb.Objfile()
or
foo_pspace = gdb.Progspace()

?

This question applies to pretty much every gdb object that can be
wrapped by Python.  I can imagine maybe a few objects where it would
be useful to create non-gdb-wrapped python objects of some type.
But I'd expect such cases to be rare.

Am I missing something?

I ask because we've got some duplicated code, two copies of the
gdb.Objfile and gdb.Progspace constructors
(objfpy_new + objfile_to_objfile_object,
and pspy_new + pspace_to_pspace_object),
and I think some cleanup is in order.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]