While useful, the std::type_info object returned by the typeid operator does not provide access to a human-readable name.
We can use the C++11 std::type_index and manually track the mapping between std::type_info and desired information.
Alternatively, we can use the boost::type_index library with additional features.
std::type_index: https://compiler-explorer.com/z/f1czz5E3b
boost::type_index: https://compiler-explorer.com/z/hG8avbbdY