ferrite_session/internal/session/choice/run_cont.rs
1use crate::internal::base::*;
2
3pub trait RunCont<C, A>
4where
5 C: Context,
6 A: Protocol,
7{
8 type Ret;
9
10 fn run_cont(
11 self,
12 cont: PartialSession<C, A>,
13 ) -> Self::Ret;
14}
15
16pub fn run_cont<Runner, C, A>(
17 runner: Runner,
18 cont: PartialSession<C, A>,
19) -> Runner::Ret
20where
21 C: Context,
22 A: Protocol,
23 Runner: RunCont<C, A>,
24{
25 runner.run_cont(cont)
26}