Edwin Cheng
55a3364e35
Fix parse u128 bug in proc-macro
2021-03-31 19:50:36 +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
Kevin Mehall
0a0e22235b
Make bare underscore token an Ident rather than Punct in proc-macro
2021-03-20 12:28:44 -06:00
Edwin Cheng
a8c9c88292
Add test for proc-macro meta info retrieval
2021-03-15 23:38:22 +08:00
Laurențiu Nicola
fc9eed4836
Use upstream cov-mark
2021-03-08 22:19:44 +02:00
Kevin Mehall
aea9749390
Move TokenStream::to_string helpers inside the method
2021-03-06 12:30:43 -07:00
Kevin Mehall
93c9b34635
Make a placeholder panic message explain its purpose
2021-03-06 09:51:13 -07:00
Kevin Mehall
62f594b390
Refactor TokenStream to hold Vec<TokenTree> instead of tt::Subtree
...
`TokenStream` assumes that its subtree's delimeter is `None`, and this
should be encoded in the type system instead of having a delimiter field
that is mostly ignored.
`tt::Subtree` is just `pub delimiter: Option<Delimiter>, pub
token_trees: Vec<TokenTree>`, so a Subtree that is statically guaranteed
not to have a delimiter is just Vec<TokenTree>.
2021-03-06 09:48:30 -07:00
Kevin Mehall
632fa8ef4a
Fix TokenStream::from_str for input consisting of a single Group
...
TokenStream holds a `tt::Subtree` but assumes its `delimiter` is always
`None`. In particular, the iterator implementation iterates over the
inner `token_trees` and ignores the `delimiter`.
However, `TokenStream::from_str` violated this assumption when the input
consists of a single Group by producing a Subtree with an outer
delimiter, which was ignored as seen by a procedural macro.
In this case, wrap an extra level of Subtree around it.
Fixes #7810
Fixes #7875
2021-03-06 09:48:08 -07:00
Edwin Cheng
83230b2704
Fix test
2021-03-06 03:30:22 +08:00
Edwin Cheng
0405d758a5
Simplify TokenStream FromStr
2021-03-06 03:17:36 +08:00
bors[bot]
8eee9149e8
Merge #7848
...
7848: Bump cargo_metadata r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-03-02 12:31:15 +00:00
Laurențiu Nicola
b20708f6ee
Bump cargo_metadata
2021-03-02 14:27:29 +02:00
vlad20012
a157f19bf5
Fix proc macro TokenStream::from_str token ids
2021-03-01 19:55:30 +03:00
Jonas Bushart
bd525c9d20
Add isize to the list of suffixed integers in typed_integer
...
The missing `isize` in `typed_integers` seems to just be an oversight.
Might fix : #7751
2021-02-22 14:48:56 +01:00
bstrie
3c922072ae
Remove use of deprecated std::collections::Bound
2021-02-16 18:22:14 -05:00
kjeremy
61092bd900
libloading 0.7
...
See https://docs.rs/libloading/0.7.0/libloading/changelog/r0_7_0/index.html
2021-02-11 10:07:49 -05:00
kjeremy
953883ca54
Use non-deprecated memmap2 crate
...
`cargo audit` complains that `memmap` is unmaintained so switch to
RazrFalcon's maintained version.
Removes yet another edge on winapi
2021-02-02 10:25:17 -05:00
kjeremy
a8b984185b
cargo update
...
Update test_serialize_proc_macro for new serde version
2021-01-18 13:13:24 -05:00
yugo-horie
f273995a25
Swap assert_eq_text\!(expected, actual)
2021-01-16 13:30:26 +09:00
Vincent Esche
21f8239ac8
Fixed typos in code comments
2021-01-09 15:41:29 +01:00
Edwin Cheng
1bd1830f50
Fix spacing in proc-macro tokens to_string
2020-12-31 13:36:19 +08:00
Jonas Schievink
70877428a8
Pass crate environment to proc macros
2020-12-27 15:29:47 +01:00
Edwin Cheng
da92f46cc8
Add force_show_panics flag
2020-12-27 18:00:59 +08:00
Laurențiu Nicola
dc519b88af
Replace goblin crate with object
2020-12-13 14:08:59 +02:00
Jonas Schievink
d477c09c8a
Avoid nesting Subtrees when parsing TokenStream
2020-12-09 14:58:46 +01:00
Jonas Schievink
6c4d5164d9
Better error when a proc macro panics
2020-12-08 19:43:58 +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
3d169bd3f4
Add track_env_var to the proc macro server
2020-10-08 17:06:20 +03:00
Jonas Schievink
cb816b1ea8
Add a proc_macro_test crate
...
This exports all 3 kinds of proc macros and is useful for testing
2020-08-15 00:27:32 +02:00
Aleksey Kladov
2119dc23e8
Rename ra_proc_macro -> proc_macro_api
2020-08-13 12:39:27 +02:00
Aleksey Kladov
2f45cfc415
Rename ra_mbe -> mbe
2020-08-13 10:36:04 +02:00
Pavan Kumar Sunkara
349e6c62ad
Rename ra_proc_macro_srv -> proc_macro_srv
2020-08-13 03:18:19 +02:00