INNER CODE UNIT · Rust

attr_add_to_fn_beginning

intellij-rust/intellij-rust · testData/test-proc-macros/src/lib.rs:166

pub fn attr_add_to_fn_beginning(attr: TokenStream, item: TokenStream) -> TokenStream {
    item.into_iter().map(|tt| {
        match tt {
            TokenTree::Group(g) => {
                if g.delimiter() == Delimiter::Brace {
                    let mut dg = Group::new(
                        g.delimiter(),
                        attr.clone().into_iter().chain(g.stream().into_iter()).collect()
                    );
                    dg.set_span(g.span());
                    TokenTree::Group(dg)
                } else {
                    TokenTree::Group(g)
                }
            }
            TokenTree::Ident(..) => tt,
            TokenTree::Punct(..) | TokenTree::Literal(..) => tt,
        }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…