From: Thomas M. <ku...@ro...> - 2016-07-23 15:16:47
|
Am 23. Juli 2016 16:35:45 MESZ, schrieb Kouhei Sutou <ko...@co...>: >Hi, > > >Ruby-GNOME2 doesn't support implementing interface in >Ruby. Because it needs interface specific C code. > What do you mean with interface specific c code? From my current observations it should be possible to extend rbg (seems to be the general shorthand for ruby-gnome2 in the code so I'll use that) such that you can create classes (inheriting gobject) that implement gobject interfaces purely in ruby. pygobject can do it after all. >> Btw, I'm using GObjectIntrospection::Loader to load libpeas bindings >> through Peas-1.0.typelib. This part seems to work okay, but maybe I'm > >> missing something here? Are there other interfaces that are known to >> work fine? > >I think that you should implement Ruby loader for libpeas >instead of implementing libpeas bindings. > >It means that >https://git.gnome.org/browse/libpeas/tree/loaders/ruby is implemented >at >https://git.gnome.org/browse/libpeas/tree/loaders like >https://git.gnome.org/browse/libpeas/tree/loaders/python . > > >Thanks, >-- >kou That's clear. Before I implement a loader I need rbg to meet the requirements for libpeas. That's mainly supporting interfaces. The libpeas loader would look for ruby classes that implement certain interfaces, and instantiate them. Actually libpeas bindings seem to work mostly out of the box based on introspection. For example, rgb already generates a module for the PeasActivatable interface. PS: I'm currently having a problem with "rgbobjects" being initialized twice if I call g_type_interface_static() for it Best regards |