【问题标题】:Haxe to SWC - protected getters/settersHaxe 到 SWC - 受保护的 getter/setter
【发布时间】:2018-03-17 00:58:36
【问题描述】:

我正在将一个库从 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;

是否有任何已知的解决方法?

【问题讨论】:

    标签: actionscript-3 getter-setter haxe swc


    【解决方案1】:

    似乎@:getter 和-D swf-protected(或@: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; }
    

    您应该在official repository 上打开一个问题。

    【讨论】:

      【解决方案2】:

      您可以尝试添加 swf-protected global compiler flag

      【讨论】:

      • 已经添加,这就是为什么bar var 出现了protected。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-08
      • 2011-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      相关资源
      最近更新 更多