Macro mpstthree::create_choose_both_from_1_to_2_and_3 [−][src]
macro_rules! create_choose_both_from_1_to_2_and_3 {
($func_name_right : ident, $func_name_left : ident, $dual_1 : ident, $dual_2 :
ident, $role_broadcast : ident, $sender : ident) => { ... };
}
This is supported on crate feature
macros_simple
only.Expand description
Call both create_choose_right_from_1_to_2_and_3
and create_choose_left_from_1_to_2_and_3.
Must be used with 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_choose_both_from_1_to_2_and_3
};
create_multiple_normal_role!(
RoleA, RoleADual |
RoleB, RoleBDual |
RoleC, RoleCDual |
);
create_broadcast_role!(RoleAlltoB, RoleBtoAll);
create_choose_both_from_1_to_2_and_3!(
choose_right_mpst_session_b_to_all,
choose_left_mpst_session_b_to_all,
RoleADual,
RoleCDual,
RoleBtoAll,
RoleB
);
This macro is available only if MultiCrusty is built with
the "macros_simple"
feature.