summaryrefslogtreecommitdiff
path: root/gio
diff options
context:
space:
mode:
authorJosé Alburquerque <jaalburqu@svn.gnome.org>2010-09-09 16:46:23 -0400
committerJosé Alburquerque <jaalburqu@svn.gnome.org>2010-09-09 16:46:23 -0400
commit8a99a56a5e00f0fa7b497793b2c69d5d278b0880 (patch)
tree2b634e8c05d1d96d21527b07865a5485358d9745 /gio
parent1c36528113be5601ab2008ef2092d761decf9605 (diff)
downloadglibmm-8a99a56a5e00f0fa7b497793b2c69d5d278b0880.tar.gz
giomm: DBus Introspection Data Classes: Add const methods.
* gio/src/dbusintrospection.hg: Add const methods returning DBusMethodInfo, DBusSignalInfo, DBusPropertyInfo and DBusInterfaceInfo classes to the DBusInterfaceInfo and DBusNodeInfo classes. * gio/src/dbusmethodinvocation.hg (get_method_info): Remove the non-const verrsion of this method because the C API only has a version returning a const GDBusMethodInfo. * tools/m4/convert_gio.m4: Move the conversion DBusMethodInvocation::get_method_info() over to the local .hg file because it is specific to that method.
Diffstat (limited to 'gio')
-rw-r--r--gio/src/dbusintrospection.hg6
-rw-r--r--gio/src/dbusmethodinvocation.hg5
2 files changed, 9 insertions, 2 deletions
diff --git a/gio/src/dbusintrospection.hg b/gio/src/dbusintrospection.hg
index 2ad85f35..075a1fcc 100644
--- a/gio/src/dbusintrospection.hg
+++ b/gio/src/dbusintrospection.hg
@@ -95,8 +95,13 @@ class DBusInterfaceInfo
public:
_WRAP_METHOD(Glib::RefPtr<DBusMethodInfo> lookup_method(const Glib::ustring& name), g_dbus_interface_info_lookup_method)
+ _WRAP_METHOD(Glib::RefPtr<const DBusMethodInfo> lookup_method(const Glib::ustring& name) const, g_dbus_interface_info_lookup_method, constversion)
+
_WRAP_METHOD(Glib::RefPtr<DBusSignalInfo> lookup_signal(const Glib::ustring& name), g_dbus_interface_info_lookup_signal)
+ _WRAP_METHOD(Glib::RefPtr<const DBusSignalInfo> lookup_signal(const Glib::ustring& name) const, g_dbus_interface_info_lookup_signal, constversion)
+
_WRAP_METHOD(Glib::RefPtr<DBusPropertyInfo> lookup_property(const Glib::ustring& name), g_dbus_interface_info_lookup_property)
+ _WRAP_METHOD(Glib::RefPtr<const DBusPropertyInfo> lookup_property(const Glib::ustring& name) const, g_dbus_interface_info_lookup_property, constversion)
//TODO: _WRAP_METHOD(void generate_xml(guint indent, GString* string_builder), g_dbus_interface_info_generate_xml)
};
@@ -116,6 +121,7 @@ public:
_WRAP_METHOD(static Glib::RefPtr<DBusNodeInfo> new_for_xml(const Glib::ustring& xml_data), g_dbus_node_info_new_for_xml, errthrow)
_WRAP_METHOD(Glib::RefPtr<DBusInterfaceInfo> lookup_interface(const Glib::ustring& name), g_dbus_node_info_lookup_interface)
+ _WRAP_METHOD(Glib::RefPtr<const DBusInterfaceInfo> lookup_interface(const Glib::ustring& name) const, g_dbus_node_info_lookup_interface, constversion)
//TODO: _WRAP_METHOD(void generate_xml(guint indent, GString* string_builder), g_dbus_node_info_generate_xml)
};
diff --git a/gio/src/dbusmethodinvocation.hg b/gio/src/dbusmethodinvocation.hg
index 957f655b..f6fb6f2e 100644
--- a/gio/src/dbusmethodinvocation.hg
+++ b/gio/src/dbusmethodinvocation.hg
@@ -54,8 +54,9 @@ public:
_WRAP_METHOD(Glib::ustring get_interface_name() const, g_dbus_method_invocation_get_interface_name)
_WRAP_METHOD(Glib::ustring get_method_name() const, g_dbus_method_invocation_get_method_name)
- _WRAP_METHOD(Glib::RefPtr<DBusMethodInfo> get_method_info(), g_dbus_method_invocation_get_method_info)
- _WRAP_METHOD(Glib::RefPtr<const DBusMethodInfo> get_method_info() const, g_dbus_method_invocation_get_method_info, constversion)
+#m4 _CONVERSION(`const GDBusMethodInfo*', `Glib::RefPtr<const DBusMethodInfo>', `Glib::wrap(const_cast<GDBusMethodInfo*>($3))')
+ // The C API only returns a const GDBusMethodInfo.
+ _WRAP_METHOD(Glib::RefPtr<const DBusMethodInfo> get_method_info() const, g_dbus_method_invocation_get_method_info)
_WRAP_METHOD(Glib::RefPtr<DBusConnection> get_connection(), g_dbus_method_invocation_get_connection)
_WRAP_METHOD(Glib::RefPtr<const DBusConnection> get_connection() const, g_dbus_method_invocation_get_connection, constversion)