gio/auto/socket_control_message.rs
1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use crate::ffi;
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9 #[doc(alias = "GSocketControlMessage")]
10 pub struct SocketControlMessage(Object<ffi::GSocketControlMessage, ffi::GSocketControlMessageClass>);
11
12 match fn {
13 type_ => || ffi::g_socket_control_message_get_type(),
14 }
15}
16
17impl SocketControlMessage {
18 pub const NONE: Option<&'static SocketControlMessage> = None;
19
20 #[doc(alias = "g_socket_control_message_deserialize")]
21 pub fn deserialize(level: i32, type_: i32, data: &[u8]) -> Option<SocketControlMessage> {
22 let size = data.len() as _;
23 unsafe {
24 from_glib_full(ffi::g_socket_control_message_deserialize(
25 level,
26 type_,
27 size,
28 data.to_glib_none().0 as glib::ffi::gpointer,
29 ))
30 }
31 }
32}
33
34pub trait SocketControlMessageExt: IsA<SocketControlMessage> + 'static {
35 #[doc(alias = "g_socket_control_message_get_level")]
36 #[doc(alias = "get_level")]
37 fn level(&self) -> i32 {
38 unsafe { ffi::g_socket_control_message_get_level(self.as_ref().to_glib_none().0) }
39 }
40
41 #[doc(alias = "g_socket_control_message_get_msg_type")]
42 #[doc(alias = "get_msg_type")]
43 fn msg_type(&self) -> i32 {
44 unsafe { ffi::g_socket_control_message_get_msg_type(self.as_ref().to_glib_none().0) }
45 }
46
47 #[doc(alias = "g_socket_control_message_get_size")]
48 #[doc(alias = "get_size")]
49 fn size(&self) -> usize {
50 unsafe { ffi::g_socket_control_message_get_size(self.as_ref().to_glib_none().0) }
51 }
52}
53
54impl<O: IsA<SocketControlMessage>> SocketControlMessageExt for O {}