1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// DO NOT EDIT
use crate::DBusMethodInfo;
use crate::DBusPropertyInfo;
use crate::DBusSignalInfo;
use glib::translate::*;
glib::wrapper! {
/// Information about a D-Bus interface.
#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct DBusInterfaceInfo(Shared<ffi::GDBusInterfaceInfo>);
match fn {
ref => |ptr| ffi::g_dbus_interface_info_ref(ptr),
unref => |ptr| ffi::g_dbus_interface_info_unref(ptr),
type_ => || ffi::g_dbus_interface_info_get_type(),
}
}
impl DBusInterfaceInfo {
//#[doc(alias = "g_dbus_interface_info_generate_xml")]
//pub fn generate_xml(&self, indent: u32, string_builder: /*Ignored*/&mut glib::String) {
// unsafe { TODO: call ffi:g_dbus_interface_info_generate_xml() }
//}
/// Looks up information about a method.
///
/// The cost of this function is O(n) in number of methods unless
/// `g_dbus_interface_info_cache_build()` has been used on `self`.
/// ## `name`
/// A D-Bus method name (typically in CamelCase)
///
/// # Returns
///
/// A [`DBusMethodInfo`][crate::DBusMethodInfo] or [`None`] if not found. Do not free, it is owned by `self`.
#[doc(alias = "g_dbus_interface_info_lookup_method")]
pub fn lookup_method(&self, name: &str) -> Option<DBusMethodInfo> {
unsafe {
from_glib_none(ffi::g_dbus_interface_info_lookup_method(
self.to_glib_none().0,
name.to_glib_none().0,
))
}
}
/// Looks up information about a property.
///
/// The cost of this function is O(n) in number of properties unless
/// `g_dbus_interface_info_cache_build()` has been used on `self`.
/// ## `name`
/// A D-Bus property name (typically in CamelCase).
///
/// # Returns
///
/// A [`DBusPropertyInfo`][crate::DBusPropertyInfo] or [`None`] if not found. Do not free, it is owned by `self`.
#[doc(alias = "g_dbus_interface_info_lookup_property")]
pub fn lookup_property(&self, name: &str) -> Option<DBusPropertyInfo> {
unsafe {
from_glib_none(ffi::g_dbus_interface_info_lookup_property(
self.to_glib_none().0,
name.to_glib_none().0,
))
}
}
/// Looks up information about a signal.
///
/// The cost of this function is O(n) in number of signals unless
/// `g_dbus_interface_info_cache_build()` has been used on `self`.
/// ## `name`
/// A D-Bus signal name (typically in CamelCase)
///
/// # Returns
///
/// A [`DBusSignalInfo`][crate::DBusSignalInfo] or [`None`] if not found. Do not free, it is owned by `self`.
#[doc(alias = "g_dbus_interface_info_lookup_signal")]
pub fn lookup_signal(&self, name: &str) -> Option<DBusSignalInfo> {
unsafe {
from_glib_none(ffi::g_dbus_interface_info_lookup_signal(
self.to_glib_none().0,
name.to_glib_none().0,
))
}
}
}