#[repr(C)] pub struct HostVTable {} #[repr(C)] #[derive(Clone, Copy)] pub struct Initialization { pub register_object: unsafe extern "C" fn(*mut PluginInitializationState, &'static str, &'static VTable), pub register_operation: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, &'static VTable, ), pub register_setting: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, &'static VTable, ), pub register_value: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, &'static VTable, ), pub operation_handler: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, CallbackPtr, ), pub value_getter: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, CallbackPtr, ), pub setting_getter: unsafe extern "C" fn( *mut PluginInitializationState, &'static str, &'static str, CallbackPtr, ), } impl ObjectABI for Initialization { type VTable = Initialization; } impl Debug for Initialization { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { f.debug_struct("InitializationVTable").finish() } } unsafe impl Sync for Initialization {} unsafe impl Send for Initialization {}