wrap_media_sink_device_info_callback

Macro wrap_media_sink_device_info_callback 

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

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

ยงExample


wrap_media_sink_device_info_callback! {
    struct MyMediaSinkDeviceInfoCallback {
        payload: String,
    }

    impl MediaSinkDeviceInfoCallback {
        // ...
    }
}

fn make_my_struct() -> MediaSinkDeviceInfoCallback {
    MyMediaSinkDeviceInfoCallback::new("payload".to_string())
}