EditorExtension

Trait EditorExtension 

Source
pub trait EditorExtension: Send + Sync {
Show 13 methods // Required methods fn info(&self) -> &ExtensionInfo; fn initialize(&mut self, context: &mut dyn ExtensionContext) -> Result<()>; fn shutdown(&mut self, context: &mut dyn ExtensionContext) -> Result<()>; fn state(&self) -> ExtensionState; fn execute_command( &mut self, command_id: &str, args: &HashMap<String, String>, context: &mut dyn ExtensionContext, ) -> Result<ExtensionResult>; // Provided methods fn commands(&self) -> Vec<ExtensionCommand> { ... } fn handle_event( &mut self, _event: &DocumentEvent, _context: &mut dyn ExtensionContext, ) -> Result<()> { ... } fn config_schema(&self) -> HashMap<String, String> { ... } fn validate_config(&self, _config: &HashMap<String, String>) -> Result<()> { ... } fn pause(&mut self) -> Result<()> { ... } fn resume(&mut self) -> Result<()> { ... } fn get_data(&self, _key: &str) -> Option<String> { ... } fn set_data(&mut self, _key: String, _value: String) -> Result<()> { ... }
}
Expand description

Main extension trait that extensions must implement

Required Methods§

Source

fn info(&self) -> &ExtensionInfo

Get extension metadata

Source

fn initialize(&mut self, context: &mut dyn ExtensionContext) -> Result<()>

Initialize the extension

Source

fn shutdown(&mut self, context: &mut dyn ExtensionContext) -> Result<()>

Shutdown the extension

Source

fn state(&self) -> ExtensionState

Get the current state of the extension

Source

fn execute_command( &mut self, command_id: &str, args: &HashMap<String, String>, context: &mut dyn ExtensionContext, ) -> Result<ExtensionResult>

Execute a command provided by this extension

Provided Methods§

Source

fn commands(&self) -> Vec<ExtensionCommand>

Get commands provided by this extension

Source

fn handle_event( &mut self, _event: &DocumentEvent, _context: &mut dyn ExtensionContext, ) -> Result<()>

Handle a document event (optional)

Source

fn config_schema(&self) -> HashMap<String, String>

Get configuration schema (optional)

Source

fn validate_config(&self, _config: &HashMap<String, String>) -> Result<()>

Validate configuration (optional)

Source

fn pause(&mut self) -> Result<()>

Pause the extension (optional)

Source

fn resume(&mut self) -> Result<()>

Resume the extension (optional)

Source

fn get_data(&self, _key: &str) -> Option<String>

Get extension-specific data (optional)

Source

fn set_data(&mut self, _key: String, _value: String) -> Result<()>

Set extension-specific data (optional)

Implementors§