di_macros 4.1.0

DI — Dependency Injection for Rust
Documentation
extern crate proc_macro;

mod main_macro;
mod register_macros;
mod with_di_scope;

use proc_macro::TokenStream;

#[proc_macro_attribute]
pub fn with_di_scope(_attr: TokenStream, item: TokenStream) -> TokenStream {
    with_di_scope::with_di_scope(item)
}

#[proc_macro_attribute]
pub fn registry(attr: TokenStream, item: TokenStream) -> TokenStream {
    register_macros::generate_di_macro(attr, item)
}

#[proc_macro_attribute]
pub fn main(attr: TokenStream, item: TokenStream) -> TokenStream {
    main_macro::expand_main(attr, item)
}