Re: glibmm: Creating a DBus namespace?



On Tue, 15 Feb 2011 10:53:26 +0100
Milosz Derezynski <internalerror gmail com> wrote:
> The "namespacing" in the C layer is very confusing. First, GDBus is
> part of GIO, but types are named GDBus*, not GioDBus*.
> 
> Then there are the "methods", which are named g_dbus_*, which would
> much rather suggest being a part of Glib itself, rather than GIO, but
> so is everything else in GIO (GFile*, g_file_*).
[snip]

That is how glib does it, rather than an inconsistency.  The glib
tarball comes with a number of other modules apart from gio, such as
gobject, gthread, gmodule, all with their own pkg-config *.pc set-up
files and (apart from gmodule) with their own separate documentation,
which also all use the G and g_ namespace prefixes.

It is glibmm which has an inconsistent usage, by separating off only
gio into a separate namespace (which incidentally is ::Gio, not
Glib::Gio), which may be the source of what you find confusing.  There
seems no particular reason why there should not be GThread, GObject and
GModule namespaces in glibmm: the defining feature of course is that gio
contains vastly more code than would these others namespaces.

However modularising glibmm is in my view a good thing, so Gio::DBus
sounds fine to me.  But why restrict this to just one subset of gio,
namely gdbus? As I say, there is a great deal more namespace modularity
which could sensibly be implemented in glib.

Chris





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]