JeVois  1.5
JeVois Smart Embedded Machine Vision Toolkit
Share this page:
Name demangling functions

Name demangling functions return the original name of a type as written in the source code, as opposed to the name used internally by the compiler, which is mangled to avoid name conflicts and confusions across different namespaces, overloads, and such.

See http://en.wikipedia.org/wiki/Name_mangling for more information.

Collaboration diagram for Name demangling functions:

Functions

std::string jevois::demangle (std::string const &mangledName)
 Demangle a mangled name. More...
 
std::string jevois::demangle (char const *mangledName)
 Demangle a mangled name. More...
 
template<typename T >
std::string jevois::demangledName ()
 Get the demangled type name of type T. More...
 
template<>
std::string jevois::demangledName< std::string > ()
 Specialization for std::string to avoid getting an ugly name. More...
 

Function Documentation

◆ demangle() [1/2]

std::string jevois::demangle ( std::string const &  mangledName)
inline

Demangle a mangled name.

Definition at line 54 of file DemangleImpl.H.

Referenced by jevois::Component::className(), and jevois::demangledName().

◆ demangle() [2/2]

std::string jevois::demangle ( char const *  mangledName)
inline

Demangle a mangled name.

Definition at line 57 of file DemangleImpl.H.

◆ demangledName()

template<typename T >
std::string jevois::demangledName ( )
inline

Get the demangled type name of type T.

Definition at line 64 of file DemangleImpl.H.

References jevois::demangle().

◆ demangledName< std::string >()

template<>
std::string jevois::demangledName< std::string > ( )
inline

Specialization for std::string to avoid getting an ugly name.

Definition at line 71 of file DemangleImpl.H.