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);
  }
}

출처: Runtime Type Information

본문

:rtti 메타데이터를 붙인 클래스에 RTTI(XML 문자열, __rtti static 필드)를 생성합니다. haxe.rtti.XmlParser.process()haxe.rtti.TypeTree로 처리하거나, Haxe 3.2 이후 haxe.rtti.Rtti.getRtti()로 쉽게 얻을 수 있어요.

더 알아보기