Unnamed repository; edit this file 'description' to name the repository.
-rw-r--r--crates/proc-macro-srv/src/dylib.rs2
-rw-r--r--crates/proc-macro-srv/src/lib.rs56
-rw-r--r--crates/proc-macro-srv/src/proc_macros.rs9
-rw-r--r--crates/proc-macro-srv/src/server_impl.rs (renamed from crates/proc-macro-srv/src/server.rs)0
-rw-r--r--crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs (renamed from crates/proc-macro-srv/src/server/rust_analyzer_span.rs)4
-rw-r--r--crates/proc-macro-srv/src/server_impl/symbol.rs (renamed from crates/proc-macro-srv/src/server/symbol.rs)0
-rw-r--r--crates/proc-macro-srv/src/server_impl/token_id.rs (renamed from crates/proc-macro-srv/src/server/token_id.rs)4
-rw-r--r--crates/proc-macro-srv/src/server_impl/token_stream.rs (renamed from crates/proc-macro-srv/src/server/token_stream.rs)0
-rw-r--r--crates/proc-macro-srv/src/tests/utils.rs8
9 files changed, 42 insertions, 41 deletions
diff --git a/crates/proc-macro-srv/src/dylib.rs b/crates/proc-macro-srv/src/dylib.rs
index 474f00a574..7fa560fb85 100644
--- a/crates/proc-macro-srv/src/dylib.rs
+++ b/crates/proc-macro-srv/src/dylib.rs
@@ -2,13 +2,13 @@
mod version;
+use proc_macro::bridge;
use std::{fmt, fs::File, io};
use libloading::Library;
use memmap2::Mmap;
use object::Object;
use paths::{AbsPath, Utf8Path, Utf8PathBuf};
-use proc_macro::bridge;
use proc_macro_api::ProcMacroKind;
use crate::ProcMacroSrvSpan;
diff --git a/crates/proc-macro-srv/src/lib.rs b/crates/proc-macro-srv/src/lib.rs
index 8bc308fce9..3d309155d5 100644
--- a/crates/proc-macro-srv/src/lib.rs
+++ b/crates/proc-macro-srv/src/lib.rs
@@ -26,7 +26,7 @@ extern crate rustc_lexer;
mod dylib;
mod proc_macros;
-mod server;
+mod server_impl;
use std::{
collections::{hash_map::Entry, HashMap},
@@ -46,36 +46,10 @@ use proc_macro_api::{
};
use span::Span;
-use crate::server::TokenStream;
+use crate::server_impl::TokenStream;
pub const RUSTC_VERSION_STRING: &str = env!("RUSTC_VERSION");
-trait ProcMacroSrvSpan: Copy {
- type Server: proc_macro::bridge::server::Server<TokenStream = TokenStream<Self>>;
- fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server;
-}
-
-impl ProcMacroSrvSpan for TokenId {
- type Server = server::token_id::TokenIdServer;
-
- fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server {
- Self::Server { interner: &server::SYMBOL_INTERNER, call_site, def_site, mixed_site }
- }
-}
-impl ProcMacroSrvSpan for Span {
- type Server = server::rust_analyzer_span::RaSpanServer;
- fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server {
- Self::Server {
- interner: &server::SYMBOL_INTERNER,
- call_site,
- def_site,
- mixed_site,
- tracked_env_vars: Default::default(),
- tracked_paths: Default::default(),
- }
- }
-}
-
#[derive(Default)]
pub struct ProcMacroSrv {
expanders: HashMap<(Utf8PathBuf, SystemTime), dylib::Expander>,
@@ -167,6 +141,32 @@ impl ProcMacroSrv {
}
}
+trait ProcMacroSrvSpan: Copy {
+ type Server: proc_macro::bridge::server::Server<TokenStream = TokenStream<Self>>;
+ fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server;
+}
+
+impl ProcMacroSrvSpan for TokenId {
+ type Server = server_impl::token_id::TokenIdServer;
+
+ fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server {
+ Self::Server { interner: &server_impl::SYMBOL_INTERNER, call_site, def_site, mixed_site }
+ }
+}
+impl ProcMacroSrvSpan for Span {
+ type Server = server_impl::rust_analyzer_span::RaSpanServer;
+ fn make_server(call_site: Self, def_site: Self, mixed_site: Self) -> Self::Server {
+ Self::Server {
+ interner: &server_impl::SYMBOL_INTERNER,
+ call_site,
+ def_site,
+ mixed_site,
+ tracked_env_vars: Default::default(),
+ tracked_paths: Default::default(),
+ }
+ }
+}
+
fn expand_id(
task: msg::ExpandMacro,
expander: &dylib::Expander,
diff --git a/crates/proc-macro-srv/src/proc_macros.rs b/crates/proc-macro-srv/src/proc_macros.rs
index b963a8a029..c5c3dff9db 100644
--- a/crates/proc-macro-srv/src/proc_macros.rs
+++ b/crates/proc-macro-srv/src/proc_macros.rs
@@ -49,11 +49,12 @@ impl ProcMacros {
call_site: S,
mixed_site: S,
) -> Result<tt::Subtree<S>, crate::PanicMessage> {
- let parsed_body = crate::server::TokenStream::with_subtree(macro_body);
+ let parsed_body = crate::server_impl::TokenStream::with_subtree(macro_body);
- let parsed_attributes = attributes.map_or_else(crate::server::TokenStream::new, |attr| {
- crate::server::TokenStream::with_subtree(attr)
- });
+ let parsed_attributes = attributes
+ .map_or_else(crate::server_impl::TokenStream::new, |attr| {
+ crate::server_impl::TokenStream::with_subtree(attr)
+ });
for proc_macro in &self.exported_macros {
match proc_macro {
diff --git a/crates/proc-macro-srv/src/server.rs b/crates/proc-macro-srv/src/server_impl.rs
index e8b340a43d..e8b340a43d 100644
--- a/crates/proc-macro-srv/src/server.rs
+++ b/crates/proc-macro-srv/src/server_impl.rs
diff --git a/crates/proc-macro-srv/src/server/rust_analyzer_span.rs b/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs
index 0350bde412..bb174ba1b2 100644
--- a/crates/proc-macro-srv/src/server/rust_analyzer_span.rs
+++ b/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs
@@ -14,7 +14,7 @@ use proc_macro::bridge::{self, server};
use span::{Span, FIXUP_ERASED_FILE_AST_ID_MARKER};
use tt::{TextRange, TextSize};
-use crate::server::{
+use crate::server_impl::{
delim_to_external, delim_to_internal, literal_with_stringify_parts,
token_stream::TokenStreamBuilder, Symbol, SymbolInternerRef, SYMBOL_INTERNER,
};
@@ -29,7 +29,7 @@ mod tt {
pub type Ident = ::tt::Ident<super::Span>;
}
-type TokenStream = crate::server::TokenStream<Span>;
+type TokenStream = crate::server_impl::TokenStream<Span>;
#[derive(Clone)]
pub struct SourceFile;
diff --git a/crates/proc-macro-srv/src/server/symbol.rs b/crates/proc-macro-srv/src/server_impl/symbol.rs
index 540d06457f..540d06457f 100644
--- a/crates/proc-macro-srv/src/server/symbol.rs
+++ b/crates/proc-macro-srv/src/server_impl/symbol.rs
diff --git a/crates/proc-macro-srv/src/server/token_id.rs b/crates/proc-macro-srv/src/server_impl/token_id.rs
index ad7bd954cf..12edacbe39 100644
--- a/crates/proc-macro-srv/src/server/token_id.rs
+++ b/crates/proc-macro-srv/src/server_impl/token_id.rs
@@ -7,7 +7,7 @@ use std::{
use proc_macro::bridge::{self, server};
-use crate::server::{
+use crate::server_impl::{
delim_to_external, delim_to_internal, literal_with_stringify_parts,
token_stream::TokenStreamBuilder, Symbol, SymbolInternerRef, SYMBOL_INTERNER,
};
@@ -31,7 +31,7 @@ type Spacing = tt::Spacing;
#[allow(unused)]
type Literal = tt::Literal;
type Span = tt::TokenId;
-type TokenStream = crate::server::TokenStream<Span>;
+type TokenStream = crate::server_impl::TokenStream<Span>;
#[derive(Clone)]
pub struct SourceFile;
diff --git a/crates/proc-macro-srv/src/server/token_stream.rs b/crates/proc-macro-srv/src/server_impl/token_stream.rs
index b1a448427c..b1a448427c 100644
--- a/crates/proc-macro-srv/src/server/token_stream.rs
+++ b/crates/proc-macro-srv/src/server_impl/token_stream.rs
diff --git a/crates/proc-macro-srv/src/tests/utils.rs b/crates/proc-macro-srv/src/tests/utils.rs
index 6050bc9e36..0579c426d0 100644
--- a/crates/proc-macro-srv/src/tests/utils.rs
+++ b/crates/proc-macro-srv/src/tests/utils.rs
@@ -7,8 +7,8 @@ use tt::TextRange;
use crate::{dylib, proc_macro_test_dylib_path, ProcMacroSrv};
-fn parse_string(call_site: TokenId, src: &str) -> crate::server::TokenStream<TokenId> {
- crate::server::TokenStream::with_subtree(
+fn parse_string(call_site: TokenId, src: &str) -> crate::server_impl::TokenStream<TokenId> {
+ crate::server_impl::TokenStream::with_subtree(
mbe::parse_to_token_tree_static_span(call_site, src).unwrap(),
)
}
@@ -17,8 +17,8 @@ fn parse_string_spanned(
anchor: SpanAnchor,
call_site: SyntaxContextId,
src: &str,
-) -> crate::server::TokenStream<Span> {
- crate::server::TokenStream::with_subtree(
+) -> crate::server_impl::TokenStream<Span> {
+ crate::server_impl::TokenStream::with_subtree(
mbe::parse_to_token_tree(anchor, call_site, src).unwrap(),
)
}