Skip to main content

Mountain/RPC/CocoonService/Provider/
RegisterFoldingRangeProvider.rs

1//! Register a Cocoon-side folding-range provider.
2
3use tonic::{Response, Status};
4use CommonLibrary::LanguageFeature::DTO::ProviderType::ProviderType;
5
6use crate::{
7	RPC::CocoonService::CocoonServiceImpl,
8	Vine::Generated::{Empty, RegisterProviderRequest},
9	dev_log,
10};
11
12pub async fn Fn(Service:&CocoonServiceImpl, Request:RegisterProviderRequest) -> Result<Response<Empty>, Status> {
13	dev_log!(
14		"cocoon",
15		"[CocoonService] Registering folding-range provider for '{}' with handle {}",
16		Request.language_selector,
17		Request.handle
18	);
19
20	Service.RegisterProvider(
21		Request.handle,
22		ProviderType::FoldingRange,
23		&Request.language_selector,
24		&Request.extension_id,
25	);
26
27	Ok(Response::new(Empty {}))
28}