(Demangled) Type Names¶
CLUE provides facilities to obtain (demangled) names of C++ types. All
following functions are in the header <clue/type_name.hpp>
, and they are in
the namespace clue
.
-
bool
has_demangle
()¶ Whether CLUE provides demangling support.
Note
At this point, demangling is supported with GCC, Clang, and ICC.
-
std::string
type_name
()¶ typename<T>()
returns a (demangled) name of typeT
.Note
It returns the demangled name when
has_demangle()
, otherwise it returns the name as given bytypeid(T).name()
.
-
std::string
type_name
(x)¶ Returns the (demangled) name of the type of
x
.
-
std::string
demangle
(const char *name)¶ Demangles the input name (the one returned by
typeid(T).name()
).Note
When
has_demangle()
is true, namely, CLUE has demangling support, this returns the demangled name, otherwise it returns a string capturing the intput name.