]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/mini-macro/src/lib.rs
Rollup merge of #82094 - gilescope:to_digit_speedup2, r=m-ou-se
[rust.git] / src / tools / clippy / mini-macro / src / lib.rs
1 #![feature(proc_macro_quote)]
2 #![deny(rust_2018_idioms)]
3 // FIXME: Remove this attribute once the weird failure is gone.
4 #![allow(unused_extern_crates)]
5 extern crate proc_macro;
6
7 use proc_macro::{quote, TokenStream};
8
9 #[proc_macro_derive(ClippyMiniMacroTest)]
10 /// # Panics
11 ///
12 /// Panics if the macro derivation fails
13 pub fn mini_macro(_: TokenStream) -> TokenStream {
14     quote!(
15         #[allow(unused)]
16         fn needless_take_by_value(s: String) {
17             println!("{}", s.len());
18         }
19         #[allow(unused)]
20         fn needless_loop(items: &[u8]) {
21             for i in 0..items.len() {
22                 println!("{}", items[i]);
23             }
24         }
25         fn line_wrapper() {
26             println!("{}", line!());
27         }
28     )
29 }