在haxe中获取编译目标语言
Getting the compilation target language in haxe
我知道,我可以做类似的事情
public static function getTarget():String {
#if flash
return "Flash";
#elseif java
return "Java";
//... some more elseif clauses ...
#end
}
为了在 haxe 中检测目标语言(参见 http://old.haxe.org/doc/snip/gettarget)。但是,每当社区添加一种新的目标编程语言(好吧,这不是那么频繁)时——我需要添加另一个 elseif 子句以便 "support/detect" 该语言 ...
所以我想知道,是否有某种预定义的 macro/function,即 returns 目标语言为字符串:
trace("This is a " + getTargetLanguage() + " program!");
我认为不存在这样的事情。
为了确保 getTarget()
在添加新目标(并且您正在为其编译)时不会无声地中断,您可以让它在这种情况下抛出编译器错误:
public static function getTarget():String {
#if flash
return "Flash";
#elseif java
return "Java";
//... some more elseif clauses ...
#else
#error "Missing target name"
#end
}
我知道,我可以做类似的事情
public static function getTarget():String {
#if flash
return "Flash";
#elseif java
return "Java";
//... some more elseif clauses ...
#end
}
为了在 haxe 中检测目标语言(参见 http://old.haxe.org/doc/snip/gettarget)。但是,每当社区添加一种新的目标编程语言(好吧,这不是那么频繁)时——我需要添加另一个 elseif 子句以便 "support/detect" 该语言 ...
所以我想知道,是否有某种预定义的 macro/function,即 returns 目标语言为字符串:
trace("This is a " + getTargetLanguage() + " program!");
我认为不存在这样的事情。
为了确保 getTarget()
在添加新目标(并且您正在为其编译)时不会无声地中断,您可以让它在这种情况下抛出编译器错误:
public static function getTarget():String {
#if flash
return "Flash";
#elseif java
return "Java";
//... some more elseif clauses ...
#else
#error "Missing target name"
#end
}