Код:Haxe: доступ к корневой пакет класс, если он скрыт за класс из другого пакета
//./Main.hx
package;
import bar.Bar;
class Main {
static var foo:Foo;
static function main() {
$type(foo); // I want it to be "Foo", but it's "bar.Foo"
}
}
//./Foo.hx
package;
class Foo {}
//./bar/Bar.hx
package bar;
class Foo {}
class Bar {}
Bar
библиотека, что я не могу изменить. Он определяет класс с именем Foo
в файле Bar.hx
. Я не использую напрямую bar.Foo
, но использую bar.Bar
. Я хочу назвать свой класс Foo
, это хорошее имя, и я не могу думать о другом, но я не могу его использовать, потому что он скрывается за bar.Foo
. Что я могу сделать?
Одним из решений является изменение bar.Foo
декларации
private class Foo {}
Он работает и ничего не ломается, но я не хочу, чтобы изменить библиотеку.