Macro mpstthree::create_choose_both_from_3_to_1_and_2 [−][src]
macro_rules! create_choose_both_from_3_to_1_and_2 { ($func_name_right : ident, $func_name_left : ident, $dual_1 : ident, $dual_2 : ident, $role_broadcast : ident, $sender : ident) => { ... }; }
Expand description
Call both
mpstthree::create_choose_right_from_3_to_1_and_2
and mpstthree::create_choose_left_from_3_to_1_and_2
.
Must be used with mpstthree::meshedchannels::MeshedChannels
.
Arguments
- The name of the new right ChooseMpst function
- The name of the new left ChooseMpst function
- The name of the dual of the first receiver
- The name of the dual of the second receiver
- The name of the broadcasting sender. This one should contain toAll according to the convention
- The name of the sender
Example
use mpstthree::role::Role; use mpstthree::{ create_multiple_normal_role, create_broadcast_role, create_meshedchannels, create_choose_both_from_3_to_1_and_2 }; create_multiple_normal_role!( RoleA, RoleADual | RoleB, RoleBDual | RoleC, RoleCDual | ); create_broadcast_role!(RoleAlltoB, RoleBtoAll); create_meshedchannels!(MeshedChannels, 3); create_choose_both_from_3_to_1_and_2!( choose_right_mpst_session_b_to_all, choose_left_mpst_session_b_to_all, RoleADual, RoleCDual, RoleBtoAll, RoleB );