背景
新規アーキテクチャや特殊アーキテクチャで RTTI(runtime time information)が使えない.
(e.g. CUDA のデバイス側コードなど)
でも typeid()
っぽいの使いたい...
(std::any
っぽいのの実装に役立つ)
方法
RTTI を使わずに Boost.Any を実装する方法
https://melpon.hatenadiary.org/entry/20090514/1242198204
ありがとうございます.
最近だと std::type_info
, typeid
相当は TypeIndex 関連にリネームしています.
コアとなる部分はここでしょうか.
あとは type_index あたりソースコード解析すればいけるはずです!
コンパイル時にテンプレートで型文字列や型id つくっているっぽ?