Actionscript 3 Haxe到SWC-受保护的getter/setter

Actionscript 3 Haxe到SWC-受保护的getter/setter,actionscript-3,getter-setter,haxe,swc,Actionscript 3,Getter Setter,Haxe,Swc,我正在将一个库从AS3移植到Haxe,我需要生成受保护的getter/setter。目标是一个*.swc文件 我的Haxe代码如下所示: private var foo(get, never):Int; @:getter(foo) private function get_foo():Int { return 0; } private var bar:Int; 但是,生成的*.swc文件略有不同: native public function get foo():int; nativ

我正在将一个库从AS3移植到Haxe,我需要生成受保护的getter/setter。目标是一个*.swc文件

我的Haxe代码如下所示:

private var foo(get, never):Int;
@:getter(foo)
private function get_foo():Int {
    return 0;
}

private var bar:Int;
但是,生成的*.swc文件略有不同:

native public function get foo():int;
native protected var bar:int;

有任何已知的解决方法吗?

您可以尝试添加受保护的swf

似乎
@:getter
和受保护的
-D swf
(或
@:protected
)不能很好地协同工作。仅应用一个或另一个

例如:

class Test {
    var foo(get, never):Int;
    @:protected @:getter(foo) private function get_foo():Int return 0;
    var bar(get, never):Int;
    @:getter(bar) @:protected private function get_bar():Int return 0;
}
生成:

protected function get get_foo() : int { return 0; }
public function get bar() : int { return 0; }

您应该在已添加的.

上打开一个问题,这就是
var出现的原因
受保护