Mountain/RPC/CocoonService/Provider/
ProvideWorkspaceSymbols.rs1
2use tonic::{Response, Status};
5use CommonLibrary::LanguageFeature::LanguageFeatureProviderRegistry::LanguageFeatureProviderRegistry;
6
7use crate::{
8 RPC::CocoonService::CocoonServiceImpl,
9 Vine::Generated::{ProvideWorkspaceSymbolsRequest, ProvideWorkspaceSymbolsResponse},
10 dev_log,
11};
12
13pub async fn Fn(
14 Service:&CocoonServiceImpl,
15
16 Request:ProvideWorkspaceSymbolsRequest,
17) -> Result<Response<ProvideWorkspaceSymbolsResponse>, Status> {
18 dev_log!(
19 "cocoon",
20 "[CocoonService] Providing workspace symbols for query: {}",
21 Request.query
22 );
23
24 match Service.environment.ProvideWorkspaceSymbols(Request.query).await {
25 Ok(_) => Ok(Response::new(ProvideWorkspaceSymbolsResponse::default())),
26
27 Err(Error) => Err(Status::internal(format!("Workspace symbols failed: {}", Error))),
28 }
29}