pub trait SemanticAnalyzerProvider: Send + Sync {
// Required methods
fn language(&self) -> &str;
fn analyze(&self, code: &str) -> ProviderResult<SemanticInfo>;
fn extract_symbols(&self, code: &str) -> ProviderResult<Vec<Symbol>>;
fn get_hover_info(
&self,
code: &str,
position: Position,
) -> ProviderResult<Option<String>>;
}Expand description
Trait for language-specific semantic analysis providers
Required Methods§
Sourcefn analyze(&self, code: &str) -> ProviderResult<SemanticInfo>
fn analyze(&self, code: &str) -> ProviderResult<SemanticInfo>
Analyze code and extract semantic information
Sourcefn extract_symbols(&self, code: &str) -> ProviderResult<Vec<Symbol>>
fn extract_symbols(&self, code: &str) -> ProviderResult<Vec<Symbol>>
Extract symbols from code
Sourcefn get_hover_info(
&self,
code: &str,
position: Position,
) -> ProviderResult<Option<String>>
fn get_hover_info( &self, code: &str, position: Position, ) -> ProviderResult<Option<String>>
Get hover information at a specific position