Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
ctti_type_index uses macro
for getting full text representation of function name which could lead
to code bloat, so prefer using stl_type_index
type when possible.
const char* raw_name() do not require dynamic memory allocation
and usually just return a pointer to an array of chars in a read-only section
of the binary image.
std::strcmp in worst case.
std::string pretty_name() usually require dynamic memory allocation
and some computations, so they are not recommended for usage in performance
critical sections.