From 9197b541c222e278e350b84b7510ec13f848d5a4 Mon Sep 17 00:00:00 2001 From: Lukas Wirth Date: Fri, 15 Dec 2023 16:12:26 +0100 Subject: [PATCH] Fix dead code warnings --- crates/proc-macro-srv/src/lib.rs | 2 +- .../src/server/rust_analyzer_span.rs | 26 ++++++-------- .../proc-macro-srv/src/server/token_stream.rs | 36 ------------------- crates/proc-macro-srv/src/tests/utils.rs | 2 +- 4 files changed, 13 insertions(+), 53 deletions(-) diff --git a/crates/proc-macro-srv/src/lib.rs b/crates/proc-macro-srv/src/lib.rs index c13bda90f3..7cd6df2df8 100644 --- a/crates/proc-macro-srv/src/lib.rs +++ b/crates/proc-macro-srv/src/lib.rs @@ -34,7 +34,7 @@ use std::{ use proc_macro_api::{ msg::{ self, deserialize_span_data_index_map, serialize_span_data_index_map, ExpnGlobals, - SpanDataIndexMap, SpanMode, TokenId, CURRENT_API_VERSION, + SpanMode, TokenId, CURRENT_API_VERSION, }, ProcMacroKind, }; diff --git a/crates/proc-macro-srv/src/server/rust_analyzer_span.rs b/crates/proc-macro-srv/src/server/rust_analyzer_span.rs index 37b68bba7d..59d492c6f6 100644 --- a/crates/proc-macro-srv/src/server/rust_analyzer_span.rs +++ b/crates/proc-macro-srv/src/server/rust_analyzer_span.rs @@ -13,8 +13,6 @@ use crate::server::{ Symbol, SymbolInternerRef, SYMBOL_INTERNER, }; mod tt { - pub use proc_macro_api::msg::TokenId; - pub use ::tt::*; pub type Subtree = ::tt::Subtree; @@ -24,11 +22,7 @@ mod tt { pub type Punct = ::tt::Punct; pub type Ident = ::tt::Ident; } -type Group = tt::Subtree; -type TokenTree = tt::TokenTree; -type Punct = tt::Punct; -type Spacing = tt::Spacing; -type Literal = tt::Literal; + type TokenStream = crate::server::TokenStream; #[derive(Clone)] @@ -96,14 +90,14 @@ impl server::TokenStream for RaSpanServer { ) -> Self::TokenStream { match tree { bridge::TokenTree::Group(group) => { - let group = Group { + let group = tt::Subtree { delimiter: delim_to_internal(group.delimiter, group.span), token_trees: match group.stream { Some(stream) => stream.into_iter().collect(), None => Vec::new(), }, }; - let tree = TokenTree::from(group); + let tree = tt::TokenTree::from(group); Self::TokenStream::from_iter(iter::once(tree)) } @@ -113,7 +107,7 @@ impl server::TokenStream for RaSpanServer { if ident.is_raw { ::tt::SmolStr::from_iter(["r#", &text]) } else { text }; let ident: tt::Ident = tt::Ident { text, span: ident.span }; let leaf = tt::Leaf::from(ident); - let tree = TokenTree::from(leaf); + let tree = tt::TokenTree::from(leaf); Self::TokenStream::from_iter(iter::once(tree)) } @@ -124,19 +118,21 @@ impl server::TokenStream for RaSpanServer { }); let literal = tt::Literal { text, span: literal.0.span }; - let leaf = tt::Leaf::from(literal); - let tree = TokenTree::from(leaf); + let leaf: ::tt::Leaf< + ::tt::SpanData, + > = tt::Leaf::from(literal); + let tree = tt::TokenTree::from(leaf); Self::TokenStream::from_iter(iter::once(tree)) } bridge::TokenTree::Punct(p) => { let punct = tt::Punct { char: p.ch as char, - spacing: if p.joint { Spacing::Joint } else { Spacing::Alone }, + spacing: if p.joint { tt::Spacing::Joint } else { tt::Spacing::Alone }, span: p.span, }; let leaf = tt::Leaf::from(punct); - let tree = TokenTree::from(leaf); + let tree = tt::TokenTree::from(leaf); Self::TokenStream::from_iter(iter::once(tree)) } } @@ -208,7 +204,7 @@ impl server::TokenStream for RaSpanServer { tt::TokenTree::Leaf(tt::Leaf::Punct(punct)) => { bridge::TokenTree::Punct(bridge::Punct { ch: punct.char as u8, - joint: punct.spacing == Spacing::Joint, + joint: punct.spacing == tt::Spacing::Joint, span: punct.span, }) } diff --git a/crates/proc-macro-srv/src/server/token_stream.rs b/crates/proc-macro-srv/src/server/token_stream.rs index 93f2e01add..8f669a3049 100644 --- a/crates/proc-macro-srv/src/server/token_stream.rs +++ b/crates/proc-macro-srv/src/server/token_stream.rs @@ -141,42 +141,6 @@ pub(super) mod token_stream { ::tt::pretty(&self.token_trees) } } - - fn subtree_replace_spans_with_call_site( - subtree: tt::Subtree, - call_site: S, - ) -> tt::Subtree { - tt::Subtree { - delimiter: tt::Delimiter { open: call_site, close: call_site, ..subtree.delimiter }, - token_trees: subtree - .token_trees - .into_iter() - .map(|it| token_tree_replace_spans_with_call_site(it, call_site)) - .collect(), - } - } - - fn token_tree_replace_spans_with_call_site( - tt: tt::TokenTree, - call_site: S, - ) -> tt::TokenTree { - match tt { - tt::TokenTree::Leaf(leaf) => { - tt::TokenTree::Leaf(leaf_replace_spans_with_call_site(leaf, call_site)) - } - tt::TokenTree::Subtree(subtree) => { - tt::TokenTree::Subtree(subtree_replace_spans_with_call_site(subtree, call_site)) - } - } - } - - fn leaf_replace_spans_with_call_site(leaf: tt::Leaf, call_site: S) -> tt::Leaf { - match leaf { - tt::Leaf::Literal(lit) => tt::Leaf::Literal(tt::Literal { span: call_site, ..lit }), - tt::Leaf::Punct(punct) => tt::Leaf::Punct(tt::Punct { span: call_site, ..punct }), - tt::Leaf::Ident(ident) => tt::Leaf::Ident(tt::Ident { span: call_site, ..ident }), - } - } } impl TokenStreamBuilder { diff --git a/crates/proc-macro-srv/src/tests/utils.rs b/crates/proc-macro-srv/src/tests/utils.rs index 475dfbf015..8755e5b3ff 100644 --- a/crates/proc-macro-srv/src/tests/utils.rs +++ b/crates/proc-macro-srv/src/tests/utils.rs @@ -5,7 +5,7 @@ use base_db::{ FileId, }; use expect_test::Expect; -use proc_macro_api::msg::{SpanDataIndexMap, TokenId}; +use proc_macro_api::msg::TokenId; use tt::TextRange; use crate::{dylib, proc_macro_test_dylib_path, ProcMacroSrv};