我需要用内存实现一个简单的 FSM:
pub struct Fsm<TFunc> {
memory: Vec<TFunc>
}
但是在我的示例中,TFunc
是任何类型,如何将其绑定到 callable
或 function
?简而言之,我只能将函数用作类型。
是否可以在 rust 中使用?
添加
明确地说,我需要下一个行为:
fsm1 = Fsm::<Fn(usize)->usize>::new(); // Ok
fsm2 = Fsm::<Fn(usize, String)>::new(); // Ok
fsm3 = Fsm::<String>::new(); // Failed! It's not a function