Function libpulse_binding::util::unwrap_optional_callback
[−]
[src]
pub fn unwrap_optional_callback<T>(
cb: Option<(T, *mut c_void)>
) -> (Option<T>, *mut c_void)
Unwraps optional callback function + data pointer tuple, wrapping the function pointer in an option wrapper. Used internally in passing such parameters to an underlying C function.
Example:
⚠Be careful when using this code, it's not being tested!
fn foo(cb: Option<(SuccessCb, *mut c_void)>) { let (cb_f, cb_d) = ::util::unwrap_optional_callback::<SuccessCb>(cb); //do something, i.e. passing cb_f and cb_d to C function }