From daa2637486755f012c738d3516ff7cb3d3dcd234 Mon Sep 17 00:00:00 2001 From: vsrs Date: Thu, 11 Mar 2021 17:39:41 +0300 Subject: Apply review suggestions --- crates/ide/src/runnables.rs | 7 +++++-- crates/ide_db/src/search.rs | 4 ++-- crates/rust-analyzer/src/handlers.rs | 4 ++-- crates/rust-analyzer/src/lsp_ext.rs | 9 +-------- editors/code/src/lsp_ext.ts | 5 +---- 5 files changed, 11 insertions(+), 18 deletions(-) diff --git a/crates/ide/src/runnables.rs b/crates/ide/src/runnables.rs index 7c92b7625..d8cf66168 100644 --- a/crates/ide/src/runnables.rs +++ b/crates/ide/src/runnables.rs @@ -5,7 +5,10 @@ use cfg::CfgExpr; use hir::{AsAssocItem, HasAttrs, HasSource, Semantics}; use ide_assists::utils::test_related_attribute; use ide_db::{ - base_db::FilePosition, defs::Definition, search::SearchScope, RootDatabase, SymbolKind, + base_db::{FilePosition, FileRange}, + defs::Definition, + search::SearchScope, + RootDatabase, SymbolKind, }; use itertools::Itertools; use rustc_hash::FxHashSet; @@ -168,7 +171,7 @@ fn find_related_tests_in_module( }; let file_id = mod_source.file_id.original_file(sema.db); - let mod_scope = SearchScope::file_part(file_id, range); + let mod_scope = SearchScope::file_range(FileRange { file_id, range }); let fn_pos = FilePosition { file_id, offset: fn_name.syntax().text_range().start() }; find_related_tests(sema, fn_pos, Some(mod_scope), tests) } diff --git a/crates/ide_db/src/search.rs b/crates/ide_db/src/search.rs index 8b211256e..fa18703e1 100644 --- a/crates/ide_db/src/search.rs +++ b/crates/ide_db/src/search.rs @@ -86,8 +86,8 @@ impl SearchScope { SearchScope::new(std::iter::once((file, None)).collect()) } - pub fn file_part(file: FileId, range: TextRange) -> SearchScope { - SearchScope::new(std::iter::once((file, Some(range))).collect()) + pub fn file_range(range: FileRange) -> SearchScope { + SearchScope::new(std::iter::once((range.file_id, Some(range.range))).collect()) } pub fn files(files: &[FileId]) -> SearchScope { diff --git a/crates/rust-analyzer/src/handlers.rs b/crates/rust-analyzer/src/handlers.rs index 53b0d3e41..ba8639e30 100644 --- a/crates/rust-analyzer/src/handlers.rs +++ b/crates/rust-analyzer/src/handlers.rs @@ -609,10 +609,10 @@ pub(crate) fn handle_runnables( pub(crate) fn handle_related_tests( snap: GlobalStateSnapshot, - params: lsp_ext::RelatedTestsParams, + params: lsp_types::TextDocumentPositionParams, ) -> Result> { let _p = profile::span("handle_related_tests"); - let position = from_proto::file_position(&snap, params.text_document_position)?; + let position = from_proto::file_position(&snap, params)?; let tests = snap.analysis.related_tests(position, None)?; let mut res = Vec::new(); diff --git a/crates/rust-analyzer/src/lsp_ext.rs b/crates/rust-analyzer/src/lsp_ext.rs index fe11903f9..efcdcd1d9 100644 --- a/crates/rust-analyzer/src/lsp_ext.rs +++ b/crates/rust-analyzer/src/lsp_ext.rs @@ -180,18 +180,11 @@ pub struct CargoRunnable { pub enum RelatedTests {} impl Request for RelatedTests { - type Params = RelatedTestsParams; + type Params = lsp_types::TextDocumentPositionParams; type Result = Vec; const METHOD: &'static str = "rust-analyzer/relatedTests"; } -#[derive(Serialize, Deserialize, Debug)] -#[serde(rename_all = "camelCase")] -pub struct RelatedTestsParams { - #[serde(flatten)] - pub text_document_position: lsp_types::TextDocumentPositionParams, -} - #[derive(Debug, Deserialize, Serialize)] pub struct TestInfo { pub runnable: Runnable, diff --git a/editors/code/src/lsp_ext.ts b/editors/code/src/lsp_ext.ts index f0e4be279..52de29e04 100644 --- a/editors/code/src/lsp_ext.ts +++ b/editors/code/src/lsp_ext.ts @@ -72,14 +72,11 @@ export interface Runnable { } export const runnables = new lc.RequestType("experimental/runnables"); -export interface RelatedTestsParams extends lc.TextDocumentPositionParams { -} - export interface TestInfo { runnable: Runnable; } -export const relatedTests = new lc.RequestType("rust-analyzer/relatedTests"); +export const relatedTests = new lc.RequestType("rust-analyzer/relatedTests"); export type InlayHint = InlayHint.TypeHint | InlayHint.ParamHint | InlayHint.ChainingHint; -- cgit v1.2.3