RTTI的实现
如何获取一个类型T的name或者唯一ID, 对于这个问题, 最常规的方式应该是借助C++的rtti了, 比如如ponder中所使用的方式:
namespace ponder {
namespace...detail {
typedef std::type_index TypeId; // Used to uniquely identify a type.
// Calculate TypeId...比如decs中对类型T的hash()方式:
struct MetatypeHash {
size_t name_hash{ 0 };
size_t matcher_hash...name_detail(), 一些需要友好名字的地方, 我们使用name_pretty(), 至于hash(), 看自己的使用场合, 可以灵活选用name_detail()或者name_pretty()..., 手边没有安装Clang的机器, 就先不贴出适配Clang的版本了.