wrap_v8_handler

Macro wrap_v8_handler 

Source
macro_rules! wrap_v8_handler {
    ($ vis : vis struct $ name : ident ; impl V8Handler { $ ($ (# [$ 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 V8Handler { $ ($ (# [$ attrs_name : meta]) * fn $ method_name : ident (& $ self : ident $ (, $ arg_name : ident : $ arg_type : ty) * $ (,) ?) $ (-> $ return_type : ty) ? { $ ($ body : tt) * }) * }) => { ... };
}
Expand description

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

ยงExample


wrap_v8_handler! {
    struct MyV8Handler {
        payload: String,
    }

    impl V8Handler {
        // ...
    }
}

fn make_my_struct() -> V8Handler {
    MyV8Handler::new("payload".to_string())
}