1extern crate proc_macro;
2extern crate syn;
3#[macro_use]
4extern crate quote;
5
6extern crate self as blf_lib_derive;
7
8use proc_macro::TokenStream;
9
10mod helpers;
11mod macros;
12
13#[proc_macro_derive(BlfChunk, attributes(Header, Size))]
14pub fn blf_chunk(input: TokenStream) -> TokenStream {
15 macros::blf_chunk::blf_chunk_macro(input)
16}
17
18#[proc_macro_derive(TitleAndBuild, attributes(Title, Build))]
19pub fn title_and_build(input: TokenStream) -> TokenStream {
20 macros::title_and_build::title_and_build_macro(input)
21}
22
23#[proc_macro_derive(BlfFile)]
24pub fn blf_file(input: TokenStream) -> TokenStream {
25 macros::blf_file::blf_file_macro(input)
26}
27
28#[proc_macro_derive(TestSize, attributes(Size))]
29pub fn test_size(input: TokenStream) -> TokenStream {
30 macros::test_size::test_size_macro(input)
31}