On Fri, 2019-04-26 at 17:58 +0100, Emmanuele Bassi via gtk-list wrote:
> Have you considered using the GObject introspection data that GTK
> itself generates, instead of your custom parsing code?
But a warning: GObject introspection is not that much fun, as it is in
zombie state.
It most definitely is not. The project is actively maintained, and it recently got even a full description of the XML schema:
The documentation has also been updated:
Starting with the API docs was really hard, took me some
hundreds hours before useful code generation started.
libgirepository is mostly meant to be used by dynamic languages, not for code generation. It's also heavily modelled on the requirements of existing language bindings like pygobject for Python; Glib::Object::Introspection, for Perl; and GJS for _javascript_. API can be added, but the on disk file format is stable, so it cannot really be changed outside of the current boundaries of its ABI.
Code generation typically starts from the GIR file format—for instance, the Rust bindings use it to generate static bindings:
Note that Gtkmm does
not use GObject introspection still.