diff options
| author | Asuna <SpriteOvO@gmail.com> | 2025-01-05 23:47:32 +0100 |
|---|---|---|
| committer | Asuna <SpriteOvO@gmail.com> | 2025-01-09 22:16:11 +0100 |
| commit | d52564118b2e3f7140e911dec4021decda6493e8 (patch) | |
| tree | a299e93da8a0a1d0ed7cb4b96daab3c2d90a14b5 /tests | |
| parent | 2a2e87b398c677062280254f6c5db8757e4b7ce3 (diff) | |
| download | rust-d52564118b2e3f7140e911dec4021decda6493e8.tar.gz rust-d52564118b2e3f7140e911dec4021decda6493e8.zip | |
Append `TokenTree` with `ToTokens` in `proc_macro::quote!`
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/proc-macro/quote-debug.stdout | 42 |
1 files changed, 23 insertions, 19 deletions
diff --git a/tests/ui/proc-macro/quote-debug.stdout b/tests/ui/proc-macro/quote-debug.stdout index d84b4e051e8..583599ff975 100644 --- a/tests/ui/proc-macro/quote-debug.stdout +++ b/tests/ui/proc-macro/quote-debug.stdout @@ -19,25 +19,29 @@ extern crate std; extern crate proc_macro; fn main() { - [crate::TokenStream::from(crate::TokenTree::Ident(crate::Ident::new("let", - crate::Span::recover_proc_macro_span(0)))), - crate::TokenStream::from(crate::TokenTree::Ident(crate::Ident::new("hello", - crate::Span::recover_proc_macro_span(1)))), - crate::TokenStream::from(crate::TokenTree::Punct(crate::Punct::new('=', - crate::Spacing::Alone))), - crate::TokenStream::from(crate::TokenTree::Literal({ - let mut iter = - "\"world\"".parse::<crate::TokenStream>().unwrap().into_iter(); - if let (Some(crate::TokenTree::Literal(mut lit)), None) = - (iter.next(), iter.next()) { - lit.set_span(crate::Span::recover_proc_macro_span(2)); - lit - } else { - ::core::panicking::panic("internal error: entered unreachable code") - } - })), - crate::TokenStream::from(crate::TokenTree::Punct(crate::Punct::new(';', - crate::Spacing::Alone)))].iter().cloned().collect::<crate::TokenStream>() + { + let mut ts = crate::TokenStream::new(); + crate::ToTokens::to_tokens(&crate::TokenTree::Ident(crate::Ident::new("let", + crate::Span::recover_proc_macro_span(0))), &mut ts); + crate::ToTokens::to_tokens(&crate::TokenTree::Ident(crate::Ident::new("hello", + crate::Span::recover_proc_macro_span(1))), &mut ts); + crate::ToTokens::to_tokens(&crate::TokenTree::Punct(crate::Punct::new('=', + crate::Spacing::Alone)), &mut ts); + crate::ToTokens::to_tokens(&crate::TokenTree::Literal({ + let mut iter = + "\"world\"".parse::<crate::TokenStream>().unwrap().into_iter(); + if let (Some(crate::TokenTree::Literal(mut lit)), None) = + (iter.next(), iter.next()) { + lit.set_span(crate::Span::recover_proc_macro_span(2)); + lit + } else { + ::core::panicking::panic("internal error: entered unreachable code") + } + }), &mut ts); + crate::ToTokens::to_tokens(&crate::TokenTree::Punct(crate::Punct::new(';', + crate::Spacing::Alone)), &mut ts); + ts + } } const _: () = { |
