我正在尝试让HaxeFlixel工作。它适用于function spread(array) {
var map = new Map(array),
result = [];
while (map.size) {
map.forEach((count, key, m) => {
result.push(key);
if (--count)
m.set(key, count);
else
m.delete(key);
});
}
return result;
}
console.log(spread([['a', 6], ['b', 2], ['c', 4], ['d', 1]]).join(' '));
,但不适用于lime test neko
。它说:
/usr/share/haxelib/flixel/4,6,0/flixel/effects/particles/FlxEmitter.hx:28:字符34-35:意外&
这是lime test neko -debug
文件在第28行周围的外观:
FlxEmitter.hx
这是我的机器规格:
答案 0 :(得分:1)
如您所见,该代码已经检查了Haxe版本,以便与Haxe 3.4和4兼容。这是必要的,因为新的type parameter constraint语法不向后兼容。
考虑到这一点,唯一的解释是您使用的Haxe 4版本尚未使用&
引入新的intersection type syntax。具有此功能的第一个版本是Haxe 4.0.0-preview.4。建议您尝试更新到最新版本Haxe 4.0.0-rc.1。
Haxe编译器4.0.0
请注意,Haxe didn't mention会在haxe --version
中发布有关预览版本的所有内容,直到Haxe 4.0.0-preview.4。因此,尽管看上去 就像您已经安装了4.0.0的最终版本,但实际上还没有发生,这是早期预览版本之一。