core.demangle

The demangle module converts mangled D symbols to a representation similar to what would have existed in code.

Members

Functions

demangle
char[] demangle(const(char)[] buf, char[] dst, CXX_DEMANGLER __cxa_demangle)

Demangles D/C++ mangled names. If it is not a D/C++ mangled name, it returns its argument name.

demangleType
char[] demangleType(const(char)[] buf, char[] dst)

* Demangles a D mangled type. * * Params: * buf = The string to demangle. * dst = An optional destination buffer. * * Returns: * The demangled type name or the original string if the name is not a * mangled D type.

getCXXDemangler
CXX_DEMANGLER getCXXDemangler()
mangle
char[] mangle(const(char)[] fqn, char[] dst)

Mangles a D symbol.

mangleFunc
char[] mangleFunc(const(char)[] fqn, char[] dst)

Mangles a D function.

reencodeMangled
char[] reencodeMangled(const(char)[] mangled)

reencode a mangled symbol name that might include duplicate occurrences of the same identifier by replacing all but the first occurence with a back reference.

Variables

cPrefix
enum string cPrefix;

C name mangling is done by adding a prefix on some platforms.

Meta

License

Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)

Authors

Sean Kelly