pub fn source_generator<F>(
id: RString,
factory: F,
options: PluginOptions,
runtime: PluginAsyncRuntimeObj,
state_backend_config: PluginStateBackendConfig,
message_channels: PluginChannels,
) -> RResult<PluginResult, PluginInitializationError>where
F: FnOnce(PluginAsyncRuntimeObj, PluginStateBackendFactory, PluginMetricsRecorder, HashMap<String, String>) -> Result<Arc<dyn SourcePlugin>, PluginInitializationError>,