diff options
Diffstat (limited to 'crates')
-rw-r--r-- | crates/proc_macro_api/Cargo.toml (renamed from crates/ra_proc_macro/Cargo.toml) | 5 | ||||
-rw-r--r-- | crates/proc_macro_api/src/lib.rs (renamed from crates/ra_proc_macro/src/lib.rs) | 0 | ||||
-rw-r--r-- | crates/proc_macro_api/src/msg.rs (renamed from crates/ra_proc_macro/src/msg.rs) | 0 | ||||
-rw-r--r-- | crates/proc_macro_api/src/process.rs (renamed from crates/ra_proc_macro/src/process.rs) | 0 | ||||
-rw-r--r-- | crates/proc_macro_api/src/rpc.rs (renamed from crates/ra_proc_macro/src/rpc.rs) | 2 | ||||
-rw-r--r-- | crates/proc_macro_srv/Cargo.toml | 2 | ||||
-rw-r--r-- | crates/proc_macro_srv/src/cli.rs | 2 | ||||
-rw-r--r-- | crates/proc_macro_srv/src/dylib.rs | 2 | ||||
-rw-r--r-- | crates/proc_macro_srv/src/lib.rs | 4 | ||||
-rw-r--r-- | crates/proc_macro_srv/src/tests/utils.rs | 2 | ||||
-rw-r--r-- | crates/project_model/Cargo.toml | 2 | ||||
-rw-r--r-- | crates/project_model/src/lib.rs | 2 | ||||
-rw-r--r-- | crates/ra_ide/src/inlay_hints.rs | 22 |
13 files changed, 26 insertions, 19 deletions
diff --git a/crates/ra_proc_macro/Cargo.toml b/crates/proc_macro_api/Cargo.toml index d2d1bc228..c1abb5627 100644 --- a/crates/ra_proc_macro/Cargo.toml +++ b/crates/proc_macro_api/Cargo.toml | |||
@@ -1,6 +1,6 @@ | |||
1 | [package] | 1 | [package] |
2 | edition = "2018" | 2 | edition = "2018" |
3 | name = "ra_proc_macro" | 3 | name = "proc_macro_api" |
4 | version = "0.1.0" | 4 | version = "0.1.0" |
5 | authors = ["rust-analyzer developers"] | 5 | authors = ["rust-analyzer developers"] |
6 | publish = false | 6 | publish = false |
@@ -10,9 +10,10 @@ license = "MIT OR Apache-2.0" | |||
10 | doctest = false | 10 | doctest = false |
11 | 11 | ||
12 | [dependencies] | 12 | [dependencies] |
13 | tt = { path = "../tt" } | ||
14 | serde = { version = "1.0", features = ["derive"] } | 13 | serde = { version = "1.0", features = ["derive"] } |
15 | serde_json = "1.0" | 14 | serde_json = "1.0" |
16 | log = "0.4.8" | 15 | log = "0.4.8" |
17 | crossbeam-channel = "0.4.0" | 16 | crossbeam-channel = "0.4.0" |
18 | jod-thread = "0.1.1" | 17 | jod-thread = "0.1.1" |
18 | |||
19 | tt = { path = "../tt" } | ||
diff --git a/crates/ra_proc_macro/src/lib.rs b/crates/proc_macro_api/src/lib.rs index 15db57eb2..15db57eb2 100644 --- a/crates/ra_proc_macro/src/lib.rs +++ b/crates/proc_macro_api/src/lib.rs | |||
diff --git a/crates/ra_proc_macro/src/msg.rs b/crates/proc_macro_api/src/msg.rs index f84ebdbc5..f84ebdbc5 100644 --- a/crates/ra_proc_macro/src/msg.rs +++ b/crates/proc_macro_api/src/msg.rs | |||
diff --git a/crates/ra_proc_macro/src/process.rs b/crates/proc_macro_api/src/process.rs index 51ffcaa78..51ffcaa78 100644 --- a/crates/ra_proc_macro/src/process.rs +++ b/crates/proc_macro_api/src/process.rs | |||
diff --git a/crates/ra_proc_macro/src/rpc.rs b/crates/proc_macro_api/src/rpc.rs index 5e5d78d06..47624163e 100644 --- a/crates/ra_proc_macro/src/rpc.rs +++ b/crates/proc_macro_api/src/rpc.rs | |||
@@ -1,4 +1,4 @@ | |||
1 | //! Data struture serialization related stuff for RPC | 1 | //! Data structure serialization related stuff for RPC |
2 | //! | 2 | //! |
3 | //! Defines all necessary rpc serialization data structures, | 3 | //! Defines all necessary rpc serialization data structures, |
4 | //! which includes `tt` related data and some task messages. | 4 | //! which includes `tt` related data and some task messages. |
diff --git a/crates/proc_macro_srv/Cargo.toml b/crates/proc_macro_srv/Cargo.toml index 0954ffb66..7171f0808 100644 --- a/crates/proc_macro_srv/Cargo.toml +++ b/crates/proc_macro_srv/Cargo.toml | |||
@@ -15,7 +15,7 @@ memmap = "0.7" | |||
15 | 15 | ||
16 | tt = { path = "../tt" } | 16 | tt = { path = "../tt" } |
17 | mbe = { path = "../mbe" } | 17 | mbe = { path = "../mbe" } |
18 | ra_proc_macro = { path = "../ra_proc_macro" } | 18 | proc_macro_api = { path = "../proc_macro_api" } |
19 | test_utils = { path = "../test_utils" } | 19 | test_utils = { path = "../test_utils" } |
20 | 20 | ||
21 | [dev-dependencies] | 21 | [dev-dependencies] |
diff --git a/crates/proc_macro_srv/src/cli.rs b/crates/proc_macro_srv/src/cli.rs index 1437794c9..d428b9567 100644 --- a/crates/proc_macro_srv/src/cli.rs +++ b/crates/proc_macro_srv/src/cli.rs | |||
@@ -1,7 +1,7 @@ | |||
1 | //! Driver for proc macro server | 1 | //! Driver for proc macro server |
2 | 2 | ||
3 | use crate::ProcMacroSrv; | 3 | use crate::ProcMacroSrv; |
4 | use ra_proc_macro::msg::{self, Message}; | 4 | use proc_macro_api::msg::{self, Message}; |
5 | use std::io; | 5 | use std::io; |
6 | 6 | ||
7 | pub fn run() -> io::Result<()> { | 7 | pub fn run() -> io::Result<()> { |
diff --git a/crates/proc_macro_srv/src/dylib.rs b/crates/proc_macro_srv/src/dylib.rs index 9b6cc91ef..f8f705da8 100644 --- a/crates/proc_macro_srv/src/dylib.rs +++ b/crates/proc_macro_srv/src/dylib.rs | |||
@@ -7,7 +7,7 @@ use std::path::{Path, PathBuf}; | |||
7 | use goblin::{mach::Mach, Object}; | 7 | use goblin::{mach::Mach, Object}; |
8 | use libloading::Library; | 8 | use libloading::Library; |
9 | use memmap::Mmap; | 9 | use memmap::Mmap; |
10 | use ra_proc_macro::ProcMacroKind; | 10 | use proc_macro_api::ProcMacroKind; |
11 | use std::io; | 11 | use std::io; |
12 | 12 | ||
13 | const NEW_REGISTRAR_SYMBOL: &str = "_rustc_proc_macro_decls_"; | 13 | const NEW_REGISTRAR_SYMBOL: &str = "_rustc_proc_macro_decls_"; |
diff --git a/crates/proc_macro_srv/src/lib.rs b/crates/proc_macro_srv/src/lib.rs index 1fc2eef82..7e4e4ad50 100644 --- a/crates/proc_macro_srv/src/lib.rs +++ b/crates/proc_macro_srv/src/lib.rs | |||
@@ -8,7 +8,7 @@ | |||
8 | //! * We use `tt` for proc-macro `TokenStream` server, it is easier to manipulate and interact with | 8 | //! * We use `tt` for proc-macro `TokenStream` server, it is easier to manipulate and interact with |
9 | //! RA than `proc-macro2` token stream. | 9 | //! RA than `proc-macro2` token stream. |
10 | //! * By **copying** the whole rustc `lib_proc_macro` code, we are able to build this with `stable` | 10 | //! * By **copying** the whole rustc `lib_proc_macro` code, we are able to build this with `stable` |
11 | //! rustc rather than `unstable`. (Although in gerenal ABI compatibility is still an issue) | 11 | //! rustc rather than `unstable`. (Although in general ABI compatibility is still an issue)… |
12 | 12 | ||
13 | #[allow(dead_code)] | 13 | #[allow(dead_code)] |
14 | #[doc(hidden)] | 14 | #[doc(hidden)] |
@@ -20,7 +20,7 @@ mod rustc_server; | |||
20 | mod dylib; | 20 | mod dylib; |
21 | 21 | ||
22 | use proc_macro::bridge::client::TokenStream; | 22 | use proc_macro::bridge::client::TokenStream; |
23 | use ra_proc_macro::{ExpansionResult, ExpansionTask, ListMacrosResult, ListMacrosTask}; | 23 | use proc_macro_api::{ExpansionResult, ExpansionTask, ListMacrosResult, ListMacrosTask}; |
24 | use std::{ | 24 | use std::{ |
25 | collections::{hash_map::Entry, HashMap}, | 25 | collections::{hash_map::Entry, HashMap}, |
26 | fs, | 26 | fs, |
diff --git a/crates/proc_macro_srv/src/tests/utils.rs b/crates/proc_macro_srv/src/tests/utils.rs index 1b6a0b6fb..5828512d6 100644 --- a/crates/proc_macro_srv/src/tests/utils.rs +++ b/crates/proc_macro_srv/src/tests/utils.rs | |||
@@ -2,7 +2,7 @@ | |||
2 | 2 | ||
3 | use crate::dylib; | 3 | use crate::dylib; |
4 | use crate::ProcMacroSrv; | 4 | use crate::ProcMacroSrv; |
5 | use ra_proc_macro::ListMacrosTask; | 5 | use proc_macro_api::ListMacrosTask; |
6 | use std::str::FromStr; | 6 | use std::str::FromStr; |
7 | use test_utils::assert_eq_text; | 7 | use test_utils::assert_eq_text; |
8 | 8 | ||
diff --git a/crates/project_model/Cargo.toml b/crates/project_model/Cargo.toml index 8d8d09387..1c84c7d20 100644 --- a/crates/project_model/Cargo.toml +++ b/crates/project_model/Cargo.toml | |||
@@ -20,6 +20,6 @@ arena = { path = "../arena" } | |||
20 | cfg = { path = "../cfg" } | 20 | cfg = { path = "../cfg" } |
21 | ra_db = { path = "../ra_db" } | 21 | ra_db = { path = "../ra_db" } |
22 | toolchain = { path = "../toolchain" } | 22 | toolchain = { path = "../toolchain" } |
23 | ra_proc_macro = { path = "../ra_proc_macro" } | 23 | proc_macro_api = { path = "../proc_macro_api" } |
24 | paths = { path = "../paths" } | 24 | paths = { path = "../paths" } |
25 | stdx = { path = "../stdx" } | 25 | stdx = { path = "../stdx" } |
diff --git a/crates/project_model/src/lib.rs b/crates/project_model/src/lib.rs index ee42198f3..234f908c9 100644 --- a/crates/project_model/src/lib.rs +++ b/crates/project_model/src/lib.rs | |||
@@ -25,7 +25,7 @@ pub use crate::{ | |||
25 | sysroot::Sysroot, | 25 | sysroot::Sysroot, |
26 | }; | 26 | }; |
27 | 27 | ||
28 | pub use ra_proc_macro::ProcMacroClient; | 28 | pub use proc_macro_api::ProcMacroClient; |
29 | 29 | ||
30 | #[derive(Debug, Clone, Eq, PartialEq)] | 30 | #[derive(Debug, Clone, Eq, PartialEq)] |
31 | pub enum ProjectWorkspace { | 31 | pub enum ProjectWorkspace { |
diff --git a/crates/ra_ide/src/inlay_hints.rs b/crates/ra_ide/src/inlay_hints.rs index 46ddc528e..81fe274ad 100644 --- a/crates/ra_ide/src/inlay_hints.rs +++ b/crates/ra_ide/src/inlay_hints.rs | |||
@@ -156,15 +156,15 @@ fn get_param_name_hints( | |||
156 | .params(sema.db) | 156 | .params(sema.db) |
157 | .into_iter() | 157 | .into_iter() |
158 | .zip(args) | 158 | .zip(args) |
159 | .filter_map(|((param, _ty), arg)| match param? { | 159 | .filter_map(|((param, _ty), arg)| { |
160 | Either::Left(self_param) => Some((self_param.to_string(), arg)), | 160 | let param_name = match param? { |
161 | Either::Right(pat) => { | 161 | Either::Left(self_param) => self_param.to_string(), |
162 | let param_name = match pat { | 162 | Either::Right(pat) => match pat { |
163 | ast::Pat::IdentPat(it) => it.name()?.to_string(), | 163 | ast::Pat::IdentPat(it) => it.name()?.to_string(), |
164 | it => it.to_string(), | 164 | _ => return None, |
165 | }; | 165 | }, |
166 | Some((param_name, arg)) | 166 | }; |
167 | } | 167 | Some((param_name, arg)) |
168 | }) | 168 | }) |
169 | .filter(|(param_name, arg)| should_show_param_name_hint(sema, &callable, ¶m_name, &arg)) | 169 | .filter(|(param_name, arg)| should_show_param_name_hint(sema, &callable, ¶m_name, &arg)) |
170 | .map(|(param_name, arg)| InlayHint { | 170 | .map(|(param_name, arg)| InlayHint { |
@@ -707,6 +707,8 @@ fn different_order(param: &Param) {} | |||
707 | fn different_order_mut(param: &mut Param) {} | 707 | fn different_order_mut(param: &mut Param) {} |
708 | fn has_underscore(_param: bool) {} | 708 | fn has_underscore(_param: bool) {} |
709 | fn enum_matches_param_name(completion_kind: CompletionKind) {} | 709 | fn enum_matches_param_name(completion_kind: CompletionKind) {} |
710 | fn param_destructuring_omitted_1((a, b): (u32, u32)) {} | ||
711 | fn param_destructuring_omitted_2(TestVarContainer { test_var: _ }: TestVarContainer) {} | ||
710 | 712 | ||
711 | fn twiddle(twiddle: bool) {} | 713 | fn twiddle(twiddle: bool) {} |
712 | fn doo(_doo: bool) {} | 714 | fn doo(_doo: bool) {} |
@@ -746,6 +748,10 @@ fn main() { | |||
746 | let b: f64 = 4.0; | 748 | let b: f64 = 4.0; |
747 | let _: f64 = a.div_euclid(b); | 749 | let _: f64 = a.div_euclid(b); |
748 | let _: f64 = a.abs_sub(b); | 750 | let _: f64 = a.abs_sub(b); |
751 | |||
752 | let range: (u32, u32) = (3, 5); | ||
753 | param_destructuring_omitted_1(range); | ||
754 | param_destructuring_omitted_2(container); | ||
749 | }"#, | 755 | }"#, |
750 | ); | 756 | ); |
751 | } | 757 | } |