pub type GTypeClassCacheFunc = Option<unsafe extern "C" fn(cache_data: gpointer, g_class: *mut GTypeClass) -> gboolean>;
Expand description
GTypeClassCacheFunc: @cache_data: data that was given to the g_type_add_class_cache_func() call @g_class: (type GObject.TypeClass): The #GTypeClass structure which is unreferenced
A callback function which is called when the reference count of a class drops to zero.
It may use g_type_class_ref() to prevent the class from being freed. You should not call g_type_class_unref() from a #GTypeClassCacheFunc function to prevent infinite recursion, use g_type_class_unref_uncached() instead.
The functions have to check the class id passed in to figure whether they actually want to cache the class of this type, since all classes are routed through the same #GTypeClassCacheFunc chain.
Returns: %TRUE to stop further #GTypeClassCacheFuncs from being called, %FALSE to continue
Aliased Type§
enum GTypeClassCacheFunc {
None,
Some(unsafe extern "C" fn(*mut c_void, *mut _GTypeClass) -> i32),
}