pub trait Routine<Ctx>:
Send
+ Sync
+ 'static {
type In: RoutineInput;
type Out;
// Required methods
fn name(&self) -> &str;
fn run(
&self,
input: <<Self as Routine<Ctx>>::In as RoutineInput>::Inner<'_>,
ctx: &mut Ctx,
) -> Result<Self::Out, RuntimeError>;
}