Trait SyncPluginHandler

Source
pub trait SyncPluginHandler<TConfiguration: Clone + Serialize> {
    // Required methods
    fn resolve_config(
        &mut self,
        config: ConfigKeyMap,
        global_config: &GlobalConfiguration,
    ) -> PluginResolveConfigurationResult<TConfiguration>;
    fn plugin_info(&mut self) -> PluginInfo;
    fn license_text(&mut self) -> String;
    fn check_config_updates(
        &self,
        message: CheckConfigUpdatesMessage,
    ) -> Result<Vec<ConfigChange>>;
    fn format(
        &mut self,
        request: SyncFormatRequest<'_, TConfiguration>,
        format_with_host: impl FnMut(SyncHostFormatRequest<'_>) -> FormatResult,
    ) -> FormatResult;
}
Expand description

Trait for implementing a Wasm plugin.

Required Methods§

Source

fn resolve_config( &mut self, config: ConfigKeyMap, global_config: &GlobalConfiguration, ) -> PluginResolveConfigurationResult<TConfiguration>

Resolves configuration based on the provided config map and global configuration.

Source

fn plugin_info(&mut self) -> PluginInfo

Gets the plugin’s plugin info.

Source

fn license_text(&mut self) -> String

Gets the plugin’s license text.

Source

fn check_config_updates( &self, message: CheckConfigUpdatesMessage, ) -> Result<Vec<ConfigChange>>

Updates the config key map. This will be called after the CLI has upgraded the plugin in dprint config update.

Source

fn format( &mut self, request: SyncFormatRequest<'_, TConfiguration>, format_with_host: impl FnMut(SyncHostFormatRequest<'_>) -> FormatResult, ) -> FormatResult

Formats the provided file text based on the provided file path and configuration.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§