diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-03-26 17:09:32 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2020-03-26 17:09:32 +0000 |
commit | b1594f108041813c9fa32538950c15c55202cbd5 (patch) | |
tree | cef1e662a7acf2807422e7c232014c5326ac37b6 /crates/ra_mbe/src | |
parent | 20c110e57f24aa54154942ee40921e9129fbc595 (diff) | |
parent | db162df264a222021dbc7f1f93af94029f3948d9 (diff) |
Merge #3727
3727: Introduce ra_proc_macro r=matklad a=edwin0cheng
This PR implemented:
1. Reading dylib path of proc-macro crate from cargo check , similar to how `OUTDIR` is obtained.
2. Added a new crate `ra_proc_macro` and implement the foot-work for reading result from external proc-macro expander.
3. Added a struct `ProcMacroClient` , which will be responsible to the client side communication to the External process.
Co-authored-by: Edwin Cheng <[email protected]>
Diffstat (limited to 'crates/ra_mbe/src')
-rw-r--r-- | crates/ra_mbe/src/lib.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/crates/ra_mbe/src/lib.rs b/crates/ra_mbe/src/lib.rs index 6a9037bfc..535b7daa0 100644 --- a/crates/ra_mbe/src/lib.rs +++ b/crates/ra_mbe/src/lib.rs | |||
@@ -28,6 +28,13 @@ pub enum ExpandError { | |||
28 | BindingError(String), | 28 | BindingError(String), |
29 | ConversionError, | 29 | ConversionError, |
30 | InvalidRepeat, | 30 | InvalidRepeat, |
31 | ProcMacroError(tt::ExpansionError), | ||
32 | } | ||
33 | |||
34 | impl From<tt::ExpansionError> for ExpandError { | ||
35 | fn from(it: tt::ExpansionError) -> Self { | ||
36 | ExpandError::ProcMacroError(it) | ||
37 | } | ||
31 | } | 38 | } |
32 | 39 | ||
33 | pub use crate::syntax_bridge::{ | 40 | pub use crate::syntax_bridge::{ |