Macro mpstthree::offer_mpst_a_to_c
source · macro_rules! offer_mpst_a_to_c { ($session: expr, { $( $pat: pat => $result: block , )+ }) => { ... }; }
Expand description
Offer a choice to A from C between many different
sessions wrapped in an enum
§Arguments
- The session to be used
- Each path, which are each variant of the enum which contains the new branches
- The block of code to process each new session
§Example
ⓘ
offer_mpst_a_to_c!(s, {
CBranchesAtoC::End(s) => {
close_mpst(s)
},
CBranchesAtoC::Video(s) => {
let (request, s) = recv_mpst_a_from_c(s)?;
let s = send_mpst_a_to_b(request + 1, s);
let (video, s) = recv_mpst_a_from_b(s)?;
let s = send_mpst_a_to_c(video + 1, s);
authenticator_recurs(s)
},
})?;