强制编译器将标识符视为包名称

时间:2015-12-16 07:31:37

标签: macros haxe

TestApi类:

package api;
class TestApi {}

AnotherClass

package somewhere.else;
class AnotherClass
{
    var api:SomeType;

    function problem()
    {
        api.TestApi; 
        // Compiler error: SomeType has no field TestApi


    }
}

在上面的示例中,我想强制编译器将api视为包名而不是变量,以便api.TestApi引用类但不是{{1}的成员变量。我需要这样做因为我在宏中构建表达式而不能使用import语句。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您应该能够使用伪程序包File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/common/action_chains.py", line 201, in <lambda> self._driver.execute(Command.MOVE_TO, {'element': to_element.id})) AttributeError: 'module' object has no attribute 'execute' 解决此问题,该程序包解析为API根目录:(1)(2

std

另一个例子:

var api:SomeType;
function problem() {
    std.api.TestApi;
}

see it in action