1use proc_macro::TokenStream;
4
5mod derive;
6mod literal;
7mod encoded_eq;
8
9#[proc_macro_derive(ESExprCodec, attributes(esexpr))]
10pub fn derive_esexpr_codec(input: TokenStream) -> TokenStream {
12 TokenStream::from(derive::derive_esexpr_codec_impl(proc_macro2::TokenStream::from(input)))
13}
14
15#[proc_macro_derive(ESExprEncodedEq)]
17pub fn derive_encoded_eq(input: TokenStream) -> TokenStream {
18 TokenStream::from(encoded_eq::derive_encoded_eq_impl(proc_macro2::TokenStream::from(input)))
19}
20
21#[proc_macro]
22pub fn esexpr_literal(input: TokenStream) -> TokenStream {
24 TokenStream::from(literal::esexpr_literal_impl(proc_macro2::TokenStream::from(input)))
25}