1use crate::{
2 DynamicRegistrationClientCapabilities, PartialResultParams, TextDocumentPositionParams,
3 WorkDoneProgressParams,
4};
5use serde::{Deserialize, Serialize};
6
7pub type ReferenceClientCapabilities = DynamicRegistrationClientCapabilities;
8#[derive(Debug, Eq, PartialEq, Clone, Copy, Deserialize, Serialize)]
9#[serde(rename_all = "camelCase")]
10pub struct ReferenceContext {
11 /// Include the declaration of the current symbol.
12 pub include_declaration: bool,
13}
14
15#[derive(Debug, Eq, PartialEq, Clone, Deserialize, Serialize)]
16#[serde(rename_all = "camelCase")]
17pub struct ReferenceParams {
18 // Text Document and Position fields
19 #[serde(flatten)]
20 pub text_document_position: TextDocumentPositionParams,
21
22 #[serde(flatten)]
23 pub work_done_progress_params: WorkDoneProgressParams,
24
25 #[serde(flatten)]
26 pub partial_result_params: PartialResultParams,
27
28 // ReferenceParams properties:
29 pub context: ReferenceContext,
30}
31