Skip to content

Commit 66daac1

Browse files
committed
Move customized auto-generate code to manual
1 parent ffbe51b commit 66daac1

File tree

3 files changed

+196
-186
lines changed

3 files changed

+196
-186
lines changed

gio/Gir.toml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -708,6 +708,14 @@ status = "generate"
708708
[[object.function]]
709709
name = "new_for_bus"
710710
manual = true
711+
[[object.function]]
712+
name = "new_sync"
713+
# cancellable param is not converted to ffi correctly
714+
manual = true
715+
[[object.function]]
716+
name = "new_for_bus_sync"
717+
# cancellable param is not converted to ffi correctly
718+
manual = true
711719

712720
[[object]]
713721
name = "Gio.DBusProxy"

gio/src/auto/dbus_object_manager_client.rs

Lines changed: 1 addition & 186 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// DO NOT EDIT
44

55
use crate::{
6-
ffi, AsyncInitable, AsyncResult, BusType, Cancellable, DBusConnection, DBusObjectManager,
6+
ffi, AsyncInitable, AsyncResult, DBusConnection, DBusObjectManager,
77
DBusObjectManagerClientFlags, DBusObjectProxy, DBusProxy, Initable,
88
};
99
use glib::{
@@ -25,191 +25,6 @@ glib::wrapper! {
2525

2626
impl DBusObjectManagerClient {
2727
pub const NONE: Option<&'static DBusObjectManagerClient> = None;
28-
29-
#[doc(alias = "g_dbus_object_manager_client_new_for_bus_sync")]
30-
#[doc(alias = "new_for_bus_sync")]
31-
pub fn for_bus_sync(
32-
bus_type: BusType,
33-
flags: DBusObjectManagerClientFlags,
34-
name: &str,
35-
object_path: &str,
36-
get_proxy_type_func: Option<
37-
Box_<
38-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type + 'static,
39-
>,
40-
>,
41-
cancellable: Option<&impl IsA<Cancellable>>,
42-
) -> Result<DBusObjectManagerClient, glib::Error> {
43-
let get_proxy_type_func_data: Box_<
44-
Option<
45-
Box_<
46-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
47-
+ 'static,
48-
>,
49-
>,
50-
> = Box_::new(get_proxy_type_func);
51-
unsafe extern "C" fn get_proxy_type_func_func(
52-
manager: *mut ffi::GDBusObjectManagerClient,
53-
object_path: *const std::ffi::c_char,
54-
interface_name: *const std::ffi::c_char,
55-
data: glib::ffi::gpointer,
56-
) -> glib::ffi::GType {
57-
let manager = from_glib_borrow(manager);
58-
let object_path: Borrowed<glib::GString> = from_glib_borrow(object_path);
59-
let interface_name: Borrowed<Option<glib::GString>> = from_glib_borrow(interface_name);
60-
let callback = &*(data as *mut Option<
61-
Box_<
62-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
63-
+ 'static,
64-
>,
65-
>);
66-
if let Some(ref callback) = *callback {
67-
callback(
68-
&manager,
69-
object_path.as_str(),
70-
(*interface_name).as_ref().map(|s| s.as_str()),
71-
)
72-
} else {
73-
panic!("cannot get closure...")
74-
}
75-
.into_glib()
76-
}
77-
let get_proxy_type_func = if get_proxy_type_func_data.is_some() {
78-
Some(get_proxy_type_func_func as _)
79-
} else {
80-
None
81-
};
82-
unsafe extern "C" fn get_proxy_type_destroy_notify_func(data: glib::ffi::gpointer) {
83-
let _callback = Box_::from_raw(
84-
data as *mut Option<
85-
Box_<
86-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
87-
+ 'static,
88-
>,
89-
>,
90-
);
91-
}
92-
let destroy_call6 = Some(get_proxy_type_destroy_notify_func as _);
93-
let super_callback0: Box_<
94-
Option<
95-
Box_<
96-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
97-
+ 'static,
98-
>,
99-
>,
100-
> = get_proxy_type_func_data;
101-
unsafe {
102-
let mut error = std::ptr::null_mut();
103-
let ret = ffi::g_dbus_object_manager_client_new_for_bus_sync(
104-
bus_type.into_glib(),
105-
flags.into_glib(),
106-
name.to_glib_none().0,
107-
object_path.to_glib_none().0,
108-
get_proxy_type_func,
109-
Box_::into_raw(super_callback0) as *mut _,
110-
destroy_call6,
111-
cancellable.map(|p| p.as_ref()).to_glib_none().0,
112-
&mut error,
113-
);
114-
if error.is_null() {
115-
Ok(from_glib_full(ret))
116-
} else {
117-
Err(from_glib_full(error))
118-
}
119-
}
120-
}
121-
122-
#[doc(alias = "g_dbus_object_manager_client_new_sync")]
123-
pub fn new_sync(
124-
connection: &DBusConnection,
125-
flags: DBusObjectManagerClientFlags,
126-
name: Option<&str>,
127-
object_path: &str,
128-
get_proxy_type_func: Option<
129-
Box_<
130-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type + 'static,
131-
>,
132-
>,
133-
cancellable: Option<&impl IsA<Cancellable>>,
134-
) -> Result<DBusObjectManagerClient, glib::Error> {
135-
let get_proxy_type_func_data: Box_<
136-
Option<
137-
Box_<
138-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
139-
+ 'static,
140-
>,
141-
>,
142-
> = Box_::new(get_proxy_type_func);
143-
unsafe extern "C" fn get_proxy_type_func_func(
144-
manager: *mut ffi::GDBusObjectManagerClient,
145-
object_path: *const std::ffi::c_char,
146-
interface_name: *const std::ffi::c_char,
147-
data: glib::ffi::gpointer,
148-
) -> glib::ffi::GType {
149-
let manager = from_glib_borrow(manager);
150-
let object_path: Borrowed<glib::GString> = from_glib_borrow(object_path);
151-
let interface_name: Borrowed<Option<glib::GString>> = from_glib_borrow(interface_name);
152-
let callback = &*(data as *mut Option<
153-
Box_<
154-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
155-
+ 'static,
156-
>,
157-
>);
158-
if let Some(ref callback) = *callback {
159-
callback(
160-
&manager,
161-
object_path.as_str(),
162-
(*interface_name).as_ref().map(|s| s.as_str()),
163-
)
164-
} else {
165-
panic!("cannot get closure...")
166-
}
167-
.into_glib()
168-
}
169-
let get_proxy_type_func = if get_proxy_type_func_data.is_some() {
170-
Some(get_proxy_type_func_func as _)
171-
} else {
172-
None
173-
};
174-
unsafe extern "C" fn get_proxy_type_destroy_notify_func(data: glib::ffi::gpointer) {
175-
let _callback = Box_::from_raw(
176-
data as *mut Option<
177-
Box_<
178-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
179-
+ 'static,
180-
>,
181-
>,
182-
);
183-
}
184-
let destroy_call6 = Some(get_proxy_type_destroy_notify_func as _);
185-
let super_callback0: Box_<
186-
Option<
187-
Box_<
188-
dyn Fn(&DBusObjectManagerClient, &str, Option<&str>) -> glib::types::Type
189-
+ 'static,
190-
>,
191-
>,
192-
> = get_proxy_type_func_data;
193-
unsafe {
194-
let mut error = std::ptr::null_mut();
195-
let ret = ffi::g_dbus_object_manager_client_new_sync(
196-
connection.to_glib_none().0,
197-
flags.into_glib(),
198-
name.to_glib_none().0,
199-
object_path.to_glib_none().0,
200-
get_proxy_type_func,
201-
Box_::into_raw(super_callback0) as *mut _,
202-
destroy_call6,
203-
cancellable.map(|p| p.as_ref()).to_glib_none().0,
204-
&mut error,
205-
);
206-
if error.is_null() {
207-
Ok(from_glib_full(ret))
208-
} else {
209-
Err(from_glib_full(error))
210-
}
211-
}
212-
}
21328
}
21429

21530
impl std::fmt::Display for DBusObjectManagerClient {

0 commit comments

Comments
 (0)