mirror of
https://github.com/rust-lang/rust-analyzer
synced 2025-01-13 13:48:50 +00:00
Simplify responses by using into()
This commit is contained in:
parent
3f44aaf363
commit
9c6e93cd6c
4 changed files with 19 additions and 18 deletions
10
Cargo.lock
generated
10
Cargo.lock
generated
|
@ -541,7 +541,7 @@ dependencies = [
|
||||||
"crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
"crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"flexi_logger 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"flexi_logger 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"lsp-types 0.58.1 (git+https://github.com/kjeremy/languageserver-types?branch=flatten)",
|
"lsp-types 0.59.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"serde 1.0.94 (registry+https://github.com/rust-lang/crates.io-index)",
|
"serde 1.0.94 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
"serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
]
|
]
|
||||||
|
@ -774,8 +774,8 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lsp-types"
|
name = "lsp-types"
|
||||||
version = "0.58.1"
|
version = "0.59.0"
|
||||||
source = "git+https://github.com/kjeremy/languageserver-types?branch=flatten#f3f793173bb1461602dabf83d324b638b3e6ec61"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
"bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"num-derive 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
"num-derive 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
@ -1200,7 +1200,7 @@ dependencies = [
|
||||||
"flexi_logger 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"flexi_logger 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"gen_lsp_server 0.2.0",
|
"gen_lsp_server 0.2.0",
|
||||||
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"lsp-types 0.58.1 (git+https://github.com/kjeremy/languageserver-types?branch=flatten)",
|
"lsp-types 0.59.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
"parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"ra_arena 0.1.0",
|
"ra_arena 0.1.0",
|
||||||
"ra_ide_api 0.1.0",
|
"ra_ide_api 0.1.0",
|
||||||
|
@ -2201,7 +2201,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
"checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
|
"checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
|
||||||
"checksum lock_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ed946d4529956a20f2d63ebe1b69996d5a2137c91913fe3ebbeff957f5bca7ff"
|
"checksum lock_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ed946d4529956a20f2d63ebe1b69996d5a2137c91913fe3ebbeff957f5bca7ff"
|
||||||
"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
|
"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
|
||||||
"checksum lsp-types 0.58.1 (git+https://github.com/kjeremy/languageserver-types?branch=flatten)" = "<none>"
|
"checksum lsp-types 0.59.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8961cde7f6f856771910edf37ff0729e59e02d2a8592a94c27495b746320e6ed"
|
||||||
"checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43"
|
"checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43"
|
||||||
"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
|
"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
|
||||||
"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
|
"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
|
||||||
|
|
|
@ -8,7 +8,7 @@ license = "MIT OR Apache-2.0"
|
||||||
description = "Generic LSP server scaffold."
|
description = "Generic LSP server scaffold."
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
lsp-types = { git = "https://github.com/kjeremy/languageserver-types", branch = "flatten" }
|
lsp-types = "0.59.0"
|
||||||
log = "0.4.3"
|
log = "0.4.3"
|
||||||
serde_json = "1.0.34"
|
serde_json = "1.0.34"
|
||||||
serde = { version = "1.0.83", features = ["derive"] }
|
serde = { version = "1.0.83", features = ["derive"] }
|
||||||
|
|
|
@ -13,7 +13,7 @@ crossbeam-channel = "0.3.5"
|
||||||
flexi_logger = "0.13.0"
|
flexi_logger = "0.13.0"
|
||||||
log = "0.4.3"
|
log = "0.4.3"
|
||||||
url_serde = "0.2.0"
|
url_serde = "0.2.0"
|
||||||
lsp-types = { git = "https://github.com/kjeremy/languageserver-types", branch = "flatten", features = ["proposed"] }
|
lsp-types = { version = "0.59.0", features = ["proposed"] }
|
||||||
rustc-hash = "1.0"
|
rustc-hash = "1.0"
|
||||||
parking_lot = "0.8.0"
|
parking_lot = "0.8.0"
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,11 @@ use std::{fmt::Write as _, io::Write as _};
|
||||||
|
|
||||||
use gen_lsp_server::ErrorCode;
|
use gen_lsp_server::ErrorCode;
|
||||||
use lsp_types::{
|
use lsp_types::{
|
||||||
CodeAction, CodeActionResponse, CodeLens, Command, Diagnostic, DiagnosticSeverity,
|
CodeAction, CodeActionResponse, CodeLens, Command, CompletionItem, Diagnostic,
|
||||||
DocumentFormattingParams, DocumentHighlight, DocumentSymbol, FoldingRange, FoldingRangeKind,
|
DiagnosticSeverity, DocumentFormattingParams, DocumentHighlight, DocumentSymbol, FoldingRange,
|
||||||
FoldingRangeParams, Hover, HoverContents, Location, MarkupContent, MarkupKind, Position,
|
FoldingRangeKind, FoldingRangeParams, Hover, HoverContents, Location, MarkupContent,
|
||||||
PrepareRenameResponse, Range, RenameParams, SymbolInformation, TextDocumentIdentifier,
|
MarkupKind, Position, PrepareRenameResponse, Range, RenameParams, SymbolInformation,
|
||||||
TextEdit, WorkspaceEdit,
|
TextDocumentIdentifier, TextEdit, WorkspaceEdit,
|
||||||
};
|
};
|
||||||
use ra_ide_api::{
|
use ra_ide_api::{
|
||||||
AssistId, Cancelable, FileId, FilePosition, FileRange, FoldKind, Query, RangeInfo,
|
AssistId, Cancelable, FileId, FilePosition, FileRange, FoldKind, Query, RangeInfo,
|
||||||
|
@ -212,7 +212,7 @@ pub fn handle_document_symbol(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(Some(req::DocumentSymbolResponse::Nested(res)))
|
Ok(Some(res.into()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn handle_workspace_symbol(
|
pub fn handle_workspace_symbol(
|
||||||
|
@ -275,7 +275,7 @@ pub fn handle_goto_definition(
|
||||||
.map(|nav| RangeInfo::new(nav_range, nav))
|
.map(|nav| RangeInfo::new(nav_range, nav))
|
||||||
.map(|nav| to_location_link(&nav, &world, &line_index))
|
.map(|nav| to_location_link(&nav, &world, &line_index))
|
||||||
.collect::<Result<Vec<_>>>()?;
|
.collect::<Result<Vec<_>>>()?;
|
||||||
Ok(Some(req::GotoDefinitionResponse::Link(res)))
|
Ok(Some(res.into()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn handle_goto_implementation(
|
pub fn handle_goto_implementation(
|
||||||
|
@ -295,7 +295,7 @@ pub fn handle_goto_implementation(
|
||||||
.map(|nav| RangeInfo::new(nav_range, nav))
|
.map(|nav| RangeInfo::new(nav_range, nav))
|
||||||
.map(|nav| to_location_link(&nav, &world, &line_index))
|
.map(|nav| to_location_link(&nav, &world, &line_index))
|
||||||
.collect::<Result<Vec<_>>>()?;
|
.collect::<Result<Vec<_>>>()?;
|
||||||
Ok(Some(req::GotoDefinitionResponse::Link(res)))
|
Ok(Some(res.into()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn handle_goto_type_definition(
|
pub fn handle_goto_type_definition(
|
||||||
|
@ -315,7 +315,7 @@ pub fn handle_goto_type_definition(
|
||||||
.map(|nav| RangeInfo::new(nav_range, nav))
|
.map(|nav| RangeInfo::new(nav_range, nav))
|
||||||
.map(|nav| to_location_link(&nav, &world, &line_index))
|
.map(|nav| to_location_link(&nav, &world, &line_index))
|
||||||
.collect::<Result<Vec<_>>>()?;
|
.collect::<Result<Vec<_>>>()?;
|
||||||
Ok(Some(req::GotoDefinitionResponse::Link(res)))
|
Ok(Some(res.into()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn handle_parent_module(
|
pub fn handle_parent_module(
|
||||||
|
@ -433,9 +433,10 @@ pub fn handle_completion(
|
||||||
Some(items) => items,
|
Some(items) => items,
|
||||||
};
|
};
|
||||||
let line_index = world.analysis().file_line_index(position.file_id);
|
let line_index = world.analysis().file_line_index(position.file_id);
|
||||||
let items = items.into_iter().map(|item| item.conv_with(&line_index)).collect();
|
let items: Vec<CompletionItem> =
|
||||||
|
items.into_iter().map(|item| item.conv_with(&line_index)).collect();
|
||||||
|
|
||||||
Ok(Some(req::CompletionResponse::Array(items)))
|
Ok(Some(items.into()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn handle_folding_range(
|
pub fn handle_folding_range(
|
||||||
|
|
Loading…
Reference in a new issue