blob: 098505079c13400b52044c993b49d16eacb6132a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
use base_db::Workspace;
use crate::util::{from_proto, to_proto};
pub fn goto_definition(
workspace: &Workspace,
params: lsp_types::GotoDefinitionParams,
) -> Option<lsp_types::GotoDefinitionResponse> {
let params = from_proto::definition_params(workspace, params)?;
let links = definition::goto_definition(¶ms)
.into_iter()
.filter_map(|result| to_proto::location_link(result, ¶ms.feature.document.line_index))
.collect();
Some(lsp_types::GotoDefinitionResponse::Link(links))
}
|