Crate proc_macro_utils
source ·Expand description
Some useful functions on proc_macro and proc_macro2 types
E.g. pushing tokens onto TokenStream and testing
for specific punctuation on TokenTree and Punct
It also adds the assert_tokens! and assert_expansion! macros to
improve unit testability for proc-macros.
Macros
- assert_expansion
parserAllows simple unit testing of proc macro implementations. - assert_tokens
parserAsserts that thelhsmatches the tokens wrapped in braces on therhs.
Structs
- TokenParser
parserWrapper forTokenStream::into_iterallowing not only to iterate on tokens but also to parse simple structures like types or expressions, though it does not make any claims about their correctness.
Traits
- Trait to test for delimiters of groups
- TokenStream2Ext
proc-macro2Generic extensions forproc_macro2::TokenStream - TokenStreamExt
proc-macroGeneric extensions forproc_macro::TokenStream - TokenTree2Ext
proc-macro2Generic extensions forproc_macro2::TokenTree - TokenTreeExt
proc-macroGeneric extensions forproc_macro::TokenTree - Trait to test for punctuation