INNER CODE UNIT · Rust

function_like_do_println_text_in_braces

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

pub fn function_like_do_println_text_in_braces(input: TokenStream) -> TokenStream {
    println!("{{hey there}}");
    input
}

#[proc_macro]
pub fn function_like_reverse_spans(item: TokenStream) -> TokenStream {
    let tts = item.into_iter().collect::<Vec<_>>();
    tts.iter().enumerate().map(|(i, tt)| {
        let mut tt2 = tt.clone();
        tt2.set_span(tts[tts.len() - 1 - i].span());
        tt2
    }).collect::<TokenStream>()
}

#[proc_macro_derive(DeriveImplForFoo)]
pub fn derive_impl_for_foo(_item: TokenStream) -> TokenStream {
   "impl Foo { fn foo(&self) -> Bar {} }".parse().unwrap()

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…