PluginSuiteInput

Trait PluginSuiteInput 

Source
pub trait PluginSuiteInput: Database {
    // Provided methods
    fn intern_plugin_suite<'r>(
        &'r mut self,
        suite: PluginSuite,
    ) -> InternedPluginSuite<'r> { ... }
    fn set_default_plugins_from_suite(&mut self, suite: PluginSuite) { ... }
    fn set_override_crate_plugins_from_suite(
        &mut self,
        crate_id: CrateId<'_>,
        suite: InternedPluginSuite<'_>,
    ) { ... }
}
Expand description

An extension trait for SemanticGroup to manage plugin setters.

Provided Methods§

Source

fn intern_plugin_suite<'r>( &'r mut self, suite: PluginSuite, ) -> InternedPluginSuite<'r>

Interns each plugin from the PluginSuite into the database.

Source

fn set_default_plugins_from_suite(&mut self, suite: PluginSuite)

Sets macro, inline macro and analyzer plugins specified in the PluginSuite as default for all crates.

Note: Sets the following Salsa inputs: DefsGroup::default_macro_plugins, DefsGroup::default_inline_macro_plugins, and SemanticGroup::default_analyzer_plugins.

Source

fn set_override_crate_plugins_from_suite( &mut self, crate_id: CrateId<'_>, suite: InternedPluginSuite<'_>, )

Sets macro, inline macro and analyzer plugins present in the PluginSuite for a crate pointed to by the CrateId, overriding the defaults for that crate.

Note: Sets the following Salsa inputs: DefsGroup::macro_plugin_overrides, DefsGroup::inline_macro_plugin_overrides, and SemanticGroup::analyzer_plugin_overrides.

Implementors§