pub trait LspSearchBackend: Send + Sync {
// Required methods
fn workspace_symbol<'a>(
&'a self,
symbol: &'a str,
file_pattern: Option<&'a str>,
max_results: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<SearchCodeHit>, ToolError>> + Send + 'a>>;
fn references<'a>(
&'a self,
symbol: &'a str,
file_pattern: Option<&'a str>,
max_results: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<SearchCodeHit>, ToolError>> + Send + 'a>>;
}