KSS Utility
C++ general utilities
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
rtti.hpp File Reference

Run Time Type Information. More...

#include <string>
#include <type_traits>
#include <typeinfo>

Go to the source code of this file.

Namespaces

 kss
 All Klassen Software Solutions libraries begin with this namespace.
 
 kss::util
 General utility methods that don't fit into any of the other categories.
 
 kss::util::rtti
 Run time type information, such as name demangling and type identification.
 

Functions

std::string kss::util::rtti::demangle (const std::string &typeName)
 
template<typename T >
std::string kss::util::rtti::name (const T &t=T())
 
template<typename C , typename T >
bool kss::util::rtti::isInstanceOf (const T &t) noexcept
 
template<typename C , typename T >
bool kss::util::rtti::isInstanceOfPtr (const T *t)
 
template<class T , class Base >
T * kss::util::rtti::as (Base *obj) noexcept
 
template<class T , class Base >
T * kss::util::rtti::as (Base &obj) noexcept
 
template<class T , class Base >
const T * kss::util::rtti::as (const Base *obj) noexcept
 
template<class T , class Base >
const T * kss::util::rtti::as (const Base &obj) noexcept
 

Detailed Description

Run Time Type Information.

Definition in file rtti.hpp.