目前的类型系统没有逃生舱感觉无法实现
参考这个看看?
之前查到过,结论就是没有办法支持
举个例子
struct MutableCollection[M, I, A] {
get : (M, I) -> A?
set : (M, I, A) -> Unit
}
fn MutableCollection::get_map[I : Hash + Eq, A]() ->
MutableCollection[Map[I, A], I, A] {
{ get: fn(m, i) { m[i] }, set: fn(m, i, a) { m[i] = a } }
}
实际上甚至无法手动实现memoize