wrap_response_filter

Macro wrap_response_filter 

Source
macro_rules! wrap_response_filter {
    ($ vis : vis struct $ name : ident ; impl ResponseFilter { $ ($ (# [$ attrs_name : meta]) * fn $ method_name : ident (& $ self : ident $ (, $ arg_name : ident : $ arg_type : ty) * $ (,) ?) $ (-> $ return_type : ty) ? { $ ($ body : tt) * }) * }) => { ... };
    ($ vis : vis struct $ name : ident $ (< $ ($ generic_type : ident : $ first_generic_type_bound : tt $ (+ $ generic_type_bound : tt) *) , + $ (,) ? >) ? { $ ($ field_vis : vis $ field_name : ident : $ field_type : ty) , * $ (,) ? } impl ResponseFilter { $ ($ (# [$ attrs_name : meta]) * fn $ method_name : ident (& $ self : ident $ (, $ arg_name : ident : $ arg_type : ty) * $ (,) ?) $ (-> $ return_type : ty) ? { $ ($ body : tt) * }) * }) => { ... };
}
Expand description

Implement the WrapResponseFilter trait for the specified struct. You can declare more members for your struct, and in the impl ResponseFilter block you can override default methods implemented by the ImplResponseFilter trait.

ยงExample


wrap_response_filter! {
    struct MyResponseFilter {
        payload: String,
    }

    impl ResponseFilter {
        // ...
    }
}

fn make_my_struct() -> ResponseFilter {
    MyResponseFilter::new("payload".to_string())
}