Skip to main content

ly_module_imp_clb

Type Alias ly_module_imp_clb 

Source
pub type ly_module_imp_clb = Option<unsafe extern "C" fn(mod_name: *const c_char, mod_rev: *const c_char, submod_name: *const c_char, submod_rev: *const c_char, user_data: *mut c_void, format: *mut Type, module_data: *mut *const c_char, free_module_data: *mut ly_module_imp_data_free_clb) -> Type>;
Expand description

@brief Callback for retrieving missing included or imported modules in a custom way.

When @p submod_name is provided, the submodule is requested instead of the module (in this case only the module name without its revision is provided).

If an @arg free_module_data callback is provided, it will be used later to free the allegedly const data which were returned by this callback.

@param[in] mod_name Missing module name. @param[in] mod_rev Optional missing module revision. If NULL and submod_name is not provided, the latest revision is requested, the parsed module is then marked by the latest_revision flag. @param[in] submod_name Optional missing submodule name. @param[in] submod_rev Optional missing submodule revision. If NULL and submod_name is provided, the latest revision is requested, the parsed submodule is then marked by the latest_revision flag. @param[in] user_data User-supplied callback data. @param[out] format Format of the returned module data. @param[out] module_data Requested module data. @param[out] free_module_data Callback for freeing the returned module data. If not set, the data will be left untouched. @return LY_ERR value. If the returned value differs from LY_SUCCESS, libyang continue in trying to get the module data according to the settings of its mechanism to search for the imported/included schemas.

Aliased Type§

pub enum ly_module_imp_clb {
    None,
    Some(unsafe extern "C" fn(*const i8, *const i8, *const i8, *const i8, *mut c_void, *mut u32, *mut *const i8, *mut Option<unsafe extern "C" fn(*mut c_void, *mut c_void)>) -> u32),
}

Variants§

§1.0.0

None

No value.

§1.0.0

Some(unsafe extern "C" fn(*const i8, *const i8, *const i8, *const i8, *mut c_void, *mut u32, *mut *const i8, *mut Option<unsafe extern "C" fn(*mut c_void, *mut c_void)>) -> u32)

Some value of type T.