1#![doc(html_root_url = "https://docs.rs/test-casing-macro/0.2.0-beta.1")]
12#![allow(missing_docs)] extern crate proc_macro;
15
16use proc_macro::TokenStream;
17
18mod decorate;
19mod test_casing;
20
21use crate::{decorate::impl_decorate, test_casing::impl_test_casing};
22
23#[proc_macro_attribute]
24pub fn test_casing(attr: TokenStream, item: TokenStream) -> TokenStream {
25 match impl_test_casing(attr, item) {
26 Ok(tokens) => tokens.into(),
27 Err(err) => err.into_compile_error().into(),
28 }
29}
30
31#[proc_macro_attribute]
32pub fn decorate(attr: TokenStream, item: TokenStream) -> TokenStream {
33 match impl_decorate(attr, item) {
34 Ok(tokens) => tokens.into(),
35 Err(err) => err.into_compile_error().into(),
36 }
37}