1 use proc_macro2::{Group, Span, TokenStream, TokenTree};
2 
respan(stream: TokenStream, span: Span) -> TokenStream3 pub(crate) fn respan(stream: TokenStream, span: Span) -> TokenStream {
4     stream
5         .into_iter()
6         .map(|token| respan_token(token, span))
7         .collect()
8 }
9 
respan_token(mut token: TokenTree, span: Span) -> TokenTree10 fn respan_token(mut token: TokenTree, span: Span) -> TokenTree {
11     if let TokenTree::Group(g) = &mut token {
12         *g = Group::new(g.delimiter(), respan(g.stream(), span));
13     }
14     token.set_span(span);
15     token
16 }
17