pydemumble

raw JSON →
0.0.1 verified Fri May 01 auth: no python

A Python wrapper for demumble, a tool that demangles C++, Rust, and Swift symbol names. Version 0.0.1 supports Python >=3.10. Provides a simple API resembling the demumble CLI. Single release, early-stage library.

pip install pydemumble
error ModuleNotFoundError: No module named 'demumble'
cause Attempting to import with the wrong module name: 'import demumble' instead of 'import pydemumble'.
fix
Use 'import pydemumble as demumble' or 'from pydemumble import demumble'.
error AttributeError: module 'pydemumble' has no attribute 'demangle'
cause The function is named 'demumble', not 'demangle'.
fix
Call pydemumble.demumble() instead of pydemumble.demangle().
gotcha The library exposes a single function 'demumble' which must be imported as pydemumble. Using 'import demumble' directly will fail.
fix Use 'import pydemumble as demumble' or 'from pydemumble import demumble'.
gotcha The demumble() function returns an empty string if the input cannot be demangled. No exception is raised.
fix Check the result; consider an empty string as failure. See source for custom behavior.

Basic usage: pass a mangled symbol string to the demumble() function.

import pydemumble as demumble

mangled = "_ZN3foo3barEv"
result = demumble.demumble(mangled)
print(result)  # Expected: foo::bar()