1#![allow(clippy::needless_doctest_main, unused_imports, unused)]
2#![warn(missing_debug_implementations, missing_docs, rust_2018_idioms)]
3#![doc(test(
4 no_crate_inject,
5 attr(deny(warnings, rust_2018_idioms), allow(dead_code, unused_variables))
6))]
7
8use proc_macro::TokenStream;
11
12mod elapsed;
13mod hello;
14
15#[proc_macro_derive(HelloMacro)]
17#[cfg(not(test))]
18pub fn hello_macro(input: TokenStream) -> TokenStream {
19 let ast = syn::parse(input).unwrap();
21
22 hello::impl_hello_macro(&ast)
24}
25
26#[proc_macro_attribute]
28#[cfg(not(test))]
29pub fn elapsed(args: TokenStream, func: TokenStream) -> TokenStream {
30 elapsed::elapsed(args, func)
31}