扩展Iterable的Haxe接口

Mat*_*loy 4 generics haxe interface

我有一个扩展Iterable(以及其他接口)的接口.

interface MyInterface extends Iterable {
  public function iterator ():Iterator<Dynamic>;
}
Run Code Online (Sandbox Code Playgroud)

这给了我

MyInterface.hx:1:第1-3行:Iterable的类型参数数量无效

什么是正确的进行方式?

Gam*_*a11 7

Iterable被定义为a typedef,而不是an interface,所以这不行.

简单地添加一个名为iterator()你的类的函数就可以了,不需要实现或扩展任何东西.这种机制称为结构子类型.

有一个关于迭代器的详细信息在这里.