8.5 런타임 타입 정보(Runtime Type Information)
8.5 런타임 타입 정보(Runtime Type Information)
Haxe 컴파일러는 :rtti 메타데이터로 주석 처리된 클래스 또는 그런 클래스를 확장하는 클래스에 대해 런타임 타입 정보(RTTI)를 생성합니다. 이 정보는 static 필드 __rtti에 XML 문자열로 저장되며 haxe.rtti.XmlParser.process()로 처리할 수 있어요. 결과 구조는 haxe.rtti.TypeTree입니다.
Haxe 3.2.0 이후 — RTTI 작업을 단순화하기 위해 타입
haxe.rtti.Rtti가 도입되었습니다. 이 정보를 검색하는 것은 이제 매우 쉽습니다:
@:rtti
class Main {
var x:String;
static function main() {
var rtti = haxe.rtti.Rtti.getRtti(Main);
trace(rtti);
}
}
본문
:rtti 메타데이터를 붙인 클래스에 RTTI(XML 문자열, __rtti static 필드)를 생성합니다. haxe.rtti.XmlParser.process()로 haxe.rtti.TypeTree로 처리하거나, Haxe 3.2 이후 haxe.rtti.Rtti.getRtti()로 쉽게 얻을 수 있어요.