Commit Graph

88 Commits

Author SHA1 Message Date
Edwin Cheng
a2950fcb05 Trim down IPC json size 2021-03-24 15:01:37 +08:00
Edwin Cheng
79f583ed66 Improve message usage in proc-macro
Reuse storage for the buffer send to child process of proc-macro.
2021-03-24 03:51:06 +08:00
Edwin Cheng
f41ae64722 Ignore proc-macro stdout to prevent IPC crash 2021-03-24 03:44:28 +08:00
Matthias Krüger
64b91393b8 remove uselessly wrapped ?s. (clippy::meedless_question_mark
let x = Some(3);

let y = Some(x?);
can just be:
let y = x
2021-03-17 02:19:40 +01:00
Matthias Krüger
966c23f529 avoid converting types into themselves via .into() (clippy::useless-conversion)
example: let x: String = String::from("hello world").into();
2021-03-17 01:27:56 +01:00
Edwin Cheng
a8c9c88292 Add test for proc-macro meta info retrieval 2021-03-15 23:38:22 +08:00
Matthias Krüger
cad617bba0 some clippy::performance fixes
use vec![] instead of Vec::new() +  push()
avoid redundant clones
use chars instead of &str for single char patterns in ends_with() and starts_with()
allocate some Vecs with capacity to avoid unneccessary resizing
2021-03-15 10:19:59 +01:00
Edwin Cheng
ad34e79bb9 use doc-comments 2021-03-10 04:54:31 +08:00
Edwin Cheng
cc8c40480a Print warning if proc-macro built by old rustc 2021-03-04 14:47:34 +08:00
Jay Somedon
0669abda4a Revise error message regarding metadata version
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2021-03-04 09:15:28 +08:00
Jay Somedon
a8f7326ee5 Update condition check code style
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-03-04 09:11:43 +08:00
Jay Somedon
c92db2abf9 Update comment
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-03-04 09:11:43 +08:00
Jay Somedon
55d73bc675 Fix multiple issues from code review
* check metadata version
* use memmap
* use Result instead of unwrap

with Jay Somedon <jay.somedon@outlook.com>
2021-03-04 09:11:33 +08:00
Jay Somedon
8fd7cd7406 Configure object crate's feature
Signed-off-by: Jay Somedon <jay.somedon@outlook.com>
2021-03-04 09:05:41 +08:00
Jay Somedon
6608acef71 Read version of rustc that compiled proc macro
With Jay Somedon <jay.somedon@outlook.com>
2021-03-04 09:05:23 +08:00
Yoshua Wuyts
79d103d5b4 Remove redundant clones 2021-02-05 16:57:26 +01:00
Laurențiu Nicola
7ed80bae92 Reap proc macro server instances 2021-02-01 21:24:09 +02:00
Laurențiu Nicola
d6b3dc1a6f Enable serde_json unbounded_depth feature 2021-01-18 14:04:20 +02:00
Vincent Esche
21f8239ac8 Fixed typos in code comments 2021-01-09 15:41:29 +01:00
Edwin Cheng
ae92baba6a Remove serde_stacker which depends on cc 2021-01-01 15:26:55 +08:00
Edwin Cheng
a65025604d Fix deep syntax tree bug generated by proc-macro 2021-01-01 15:09:27 +08:00
Jonas Schievink
70877428a8 Pass crate environment to proc macros 2020-12-27 15:29:47 +01:00
Jonas Schievink
798968e1e3 Move TokenExpander to base_db and rename it
It's only used to break the dependency to proc_macro_api
2020-12-27 15:29:47 +01:00
Jonas Schievink
2b2318e695 Remove dummy ProcMacroClient in favor of Option 2020-12-07 17:16:50 +01:00
Jonas Schievink
fb21a215be Retain types of proc macros and allow attr. macros 2020-12-07 17:06:14 +01:00
Jonas Schievink
e8a19e24ea Make ProcMacroProcessExpander private 2020-12-07 14:11:17 +01:00
Jonas Schievink
e42e6f9ab9 ProcMacroProcessExpander: support attribute macros 2020-12-07 14:02:27 +01:00
Jonas Schievink
869ad13cf1 Don't respawn proc macro server on crash 2020-12-04 20:11:56 +01:00
Jonas Schievink
b857149720 Unwrap process.stdio() result
If this is ever `None` here, that's a bug
2020-12-04 14:03:06 +01:00
Jonas Schievink
2845ce5bc6 Destructure in for loop 2020-12-04 13:57:33 +01:00
Jonas Schievink
c50d9f3683 Remove unnecessary Option 2020-12-04 13:54:09 +01:00
Aleksey Kladov
b610118453 Deny unreachable-pub
It's very useful when `pub` is equivalent to "this is crate's public
API", let's enforce this!

Ideally, we should enforce it for local `cargo test`, and only during
CI, but that needs https://github.com/rust-lang/cargo/issues/5034.
2020-11-02 14:07:08 +01:00
Laurențiu Nicola
db7813ef2c Bump crossbeam-channel in crates 2020-10-13 16:57:01 +03:00
Pavan Kumar Sunkara
335add49db Add description for crates that will be published 2020-08-24 13:07:22 +02:00
Pavan Kumar Sunkara
a8fa5cd42e Add version to deps in cargo.toml 2020-08-24 11:10:41 +02:00
Jonas Schievink
bee56e68a3 Hacky support for fn-like proc macros 2020-08-15 15:34:56 +02:00
Aleksey Kladov
1b0c7701cc Rename ra_ide -> ide 2020-08-13 17:58:27 +02:00
Aleksey Kladov
2119dc23e8 Rename ra_proc_macro -> proc_macro_api 2020-08-13 12:39:27 +02:00