aboutsummaryrefslogtreecommitdiff
path: root/crates/rust-analyzer/src/main_loop.rs
diff options
context:
space:
mode:
authorkjeremy <[email protected]>2020-07-14 16:03:44 +0100
committerkjeremy <[email protected]>2020-07-14 16:03:44 +0100
commit2257a48cd36c61f887b881edf44df7fd260a52fc (patch)
tree6721ea702a05f74efb187658450dec1531f9d983 /crates/rust-analyzer/src/main_loop.rs
parentebb4d29d694f60f746a2b7b43980ba89cc9dc807 (diff)
Use more explicity type for save registration
Diffstat (limited to 'crates/rust-analyzer/src/main_loop.rs')
-rw-r--r--crates/rust-analyzer/src/main_loop.rs42
1 files changed, 23 insertions, 19 deletions
diff --git a/crates/rust-analyzer/src/main_loop.rs b/crates/rust-analyzer/src/main_loop.rs
index 702f25a19..5afcc2d87 100644
--- a/crates/rust-analyzer/src/main_loop.rs
+++ b/crates/rust-analyzer/src/main_loop.rs
@@ -122,29 +122,33 @@ impl GlobalState {
122 ); 122 );
123 }; 123 };
124 124
125 let registration_options = lsp_types::TextDocumentRegistrationOptions { 125 let save_registration_options = lsp_types::TextDocumentSaveRegistrationOptions {
126 document_selector: Some(vec![ 126 include_text: Some(false),
127 lsp_types::DocumentFilter { 127 text_document_registration_options: lsp_types::TextDocumentRegistrationOptions {
128 language: None, 128 document_selector: Some(vec![
129 scheme: None, 129 lsp_types::DocumentFilter {
130 pattern: Some("**/*.rs".into()), 130 language: None,
131 }, 131 scheme: None,
132 lsp_types::DocumentFilter { 132 pattern: Some("**/*.rs".into()),
133 language: None, 133 },
134 scheme: None, 134 lsp_types::DocumentFilter {
135 pattern: Some("**/Cargo.toml".into()), 135 language: None,
136 }, 136 scheme: None,
137 lsp_types::DocumentFilter { 137 pattern: Some("**/Cargo.toml".into()),
138 language: None, 138 },
139 scheme: None, 139 lsp_types::DocumentFilter {
140 pattern: Some("**/Cargo.lock".into()), 140 language: None,
141 }, 141 scheme: None,
142 ]), 142 pattern: Some("**/Cargo.lock".into()),
143 },
144 ]),
145 },
143 }; 146 };
147
144 let registration = lsp_types::Registration { 148 let registration = lsp_types::Registration {
145 id: "textDocument/didSave".to_string(), 149 id: "textDocument/didSave".to_string(),
146 method: "textDocument/didSave".to_string(), 150 method: "textDocument/didSave".to_string(),
147 register_options: Some(serde_json::to_value(registration_options).unwrap()), 151 register_options: Some(serde_json::to_value(save_registration_options).unwrap()),
148 }; 152 };
149 self.send_request::<lsp_types::request::RegisterCapability>( 153 self.send_request::<lsp_types::request::RegisterCapability>(
150 lsp_types::RegistrationParams { registrations: vec![registration] }, 154 lsp_types::RegistrationParams { registrations: vec![registration] },