pub unsafe extern "C" fn g_object_replace_data(
    object: *mut GObject,
    key: *const i8,
    oldval: *mut c_void,
    newval: *mut c_void,
    destroy: Option<unsafe extern "C" fn(_: *mut c_void)>,
    old_destroy: *mut Option<unsafe extern "C" fn(_: *mut c_void)>
) -> i32