pub fn make_plugin_interface_with_streams(
reader: impl Read + Send + 'static,
writer: impl Write + Send + 'static,
after_close: impl FnOnce() + Send + 'static,
source: Arc<PluginSource>,
pid: Option<u32>,
gc: Option<PluginGc>,
) -> Result<PluginInterface, ShellError>Expand description
Create a plugin interface from low-level components.
after_closeis called to clean up after thereaderends.sourceis required so that custom values produced by the plugin can spawn it.pidmay be provided for process management (e.g.EnterForeground).gcmay be provided for communication with the plugin’s GC (e.g.SetGcDisabled).